我希望通过只获取这些元素的锁,而不是为整个对象获取锁,从而允许不同的线程对不同的值元素进行更改。在
例如:考虑一下字典-
D = {1:[time, speed, distance],2:[time1,speed1, distance1], 3:[time2, speed2, distance2]}
线程T1修改D[1][0]
,线程T2修改D[1][1]
,线程T3修改{},等等,因此T1应该锁定D[1][0]
,T2应该锁定D[1][1]
。T3应该锁定D[2][2]
,并同时修改它们。在
Tags:
在Python中,有Global Interpreter Lock,因此不必担心锁定。您也不会从多线程处理中获得性能优势,至少不会像Java或C那样
简而言之,一次只有一个线程运行Python代码。如果您受I/O限制(例如网络访问),这就是您想要的解决方案。如果您是CPU限制(例如计算),请使用本机模块或查看多处理模块。在
相关问题 更多 >
编程相关推荐