python多线程列表追加数据
时间: 2023-11-16 15:04:07 浏览: 152
python多线程并发实例及其优化
可以使用Lock来保证多线程对列表的操作不会冲突,示例如下:
```python
import threading
my_list = []
lock = threading.Lock()
def worker():
global my_list
with lock:
my_list.append(threading.current_thread().name)
threads = []
for i in range(10):
t = threading.Thread(target=worker)
threads.append(t)
t.start()
for t in threads:
t.join()
print(my_list)
```
在worker函数中,首先获取锁,然后进行列表操作,最后释放锁。这样就可以保证多线程对列表的操作不会冲突。
阅读全文