python中的Process

from multiprocessing import Process
import time
import os

#
# def acb(n):
#     print(n)
#
#
# if __name__ == '__main__':
#     p1 = Process(target=acb, args=("ready", ))
#     p1.start()
#     time.sleep(1)
#     print("end")


# class MP(Process):
#     def __init__(self, this):
#         super().__init__()
#         self.this = this
#         print(self.this)
#
#     def run(self):
#         print("hehe")
#         print(os.getpid())
#         print(self.pid)
#
#     def start(self):
#         super().start()
#         print("game over")
#
#
# if __name__ == '__main__':
#     mp = MP("2b")
#     mp.start()
#     time.sleep(1)
#     print("可以滚了!")

# print(bin(10))
# print(int("0b1010", 2))
# print(oct(10))
# print(int("0b1010", 2))
# print(hex(10))
# print(int("0xa", 16))


# a = 10
# def dd():
#     global a
#     a = 11
#     print(a)
# dd()
# print(a)

# def abc(x, y, m, n):
#     print(m-n)
#     print(x, y)
#
#
# if __name__ == '__main__':
#     p = Process(target=abc, args=(5, 0), kwargs={"n": 100, "m": 998})  # 关键字参数必须对应相同的关键字名称
#     p.start()
#     print("睡一会!")
#     time.sleep(10)
#     print("咚咚咚, 结束了")


# me = 998

#
# def sub_process():
#     st_time = time.time()
#     global me # 引入全局变量
#     me = 666
#     print(me)
#     end_tiem = time.time()
#     print(end_tiem-st_time)
#
#
# if __name__ == '__main__':
#     main_p = Process(target=sub_process)  # 定义子进程
#
#     main_p.start()
#     time.sleep(3)   # 趴三秒
#     print(me)  # main进程变量


# def c():
#     print(5)
#     time.sleep(5)
#     print(4)
#     time.sleep(5)
#
#
# if __name__ == '__main__':
#     p = Process(target=c)
#     p.start()
#     time.sleep(6)
#     p.terminate()
#     print("end")


# join 方法, 等待子进程执行结束执行下后续代码(阻塞状态)
# def p(m=0):
#     print(m, 111)
# if __name__ == '__main__':
#     # p1 = Process(target=p,)
#     # p1.start()
#     # p1.join()
#     p_lst = []
#     for i in range(8):
#         p1 = Process(target=p, args=(i,))
#         p1.start()
#         p_lst.append(p1)
#         # p1.join() # 等待进程结束后执行下一次循环,效率低
#     for p in p_lst:  # 所有进程异步, 等待结束执行主程序, 阻塞等待所有进程结束后放开
#         p.join()
#
#     print("end")

# 僵尸进程, 子程序还在执行,主程序已经执行完毕, 但是主进程并未完全退出, 依然跟随子进程
# 孤儿进程, 主进程开启子进程后异常关闭, 子进程依然继续执行
# 守护进程,  主进程退出后,子进程会跟随其同时退出, 不受保护, 主进程退出时不考虑子进程的运行状态,
# def pp():
#     time.sleep(2)
#     print(1)
# if __name__ == '__main__':
#     p = Process(target=pp,)
#     p.daemon = True  #  设置p为守护进程,
#     p.start()
#     # p.daemon = True  # 没开始就结束了,要报错的
#     print(11)

# 非阻塞# 设置阻塞状态立即执行,不等待
# import socket
# s = socket.socket()
# address = ("192.168.15.102", 8880)
# s.bind(address)
# s.setblocking(False)  # 不等待..,要报错的
# s.listen(0)
# c, d = s.accept()