标签:get reading 套接字 修改 如何 资源 用户 turn 执行
一个线程的修改被另一个线程的修改覆盖掉。
多线程的例子
# python实现多线程 import threading lock = threading.Lock() n = [0] def foo(): with lock: # 加锁 n[0] = n[0] + 1 n[0] = n[0] + 1 threads = [] # 用来储存所有线程 for i in range(5000): t = threading.Thread(target=foo) # 传入foo函数 threads.append(t) for t in threads: t.start() print(n)
多进程的例子
python有GIL,可以用多进程实现cpu密集程序
# 多进程 import multiprocessing def fib(n): if n<= 1: return 1 return fib(n-1) + fib(n-2) if __name__ == ‘__main__‘: jobs = [] for i in range(10,20): p = multiprocessing.Process(target=fib, args=(i,)) jobs.append(p) p.start()
标签:get reading 套接字 修改 如何 资源 用户 turn 执行
原文地址:https://www.cnblogs.com/dairuiquan/p/11594022.html