zoukankan      html  css  js  c++  java
  • 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()
    
  • 相关阅读:
    Mybatis入门
    结合模板导出PDF文件
    生成Excel文件
    生成PDF文件
    BeanFactory not initialized or already closed
    Oracle数据库的视图
    ORACLE简介
    Cookie和session
    【cookie的使用】&【Session】
    过滤器的相关知识
  • 原文地址:https://www.cnblogs.com/tcpblog/p/9837223.html
Copyright © 2011-2022 走看看