threading.Thread()创建的线程加锁
时间: 2023-09-02 12:14:03 浏览: 96
c++线程加锁
3星 · 编辑精心推荐
可以使用Python内置的Lock对象来对线程进行加锁操作。Lock对象提供了两个方法:
1. acquire():获取锁,如果锁已经被其他线程获取,则该线程会阻塞直到锁被释放。
2. release():释放锁,如果该锁没有被获取,则会抛出异常。
示例代码:
```
import threading
# 创建Lock对象
lock = threading.Lock()
# 定义线程函数
def func():
# 获取锁
lock.acquire()
# 进行操作
print("Hello, World!")
# 释放锁
lock.release()
# 创建线程
t = threading.Thread(target=func)
# 启动线程
t.start()
# 等待线程结束
t.join()
```
在上面的示例代码中,我们首先创建了一个Lock对象,并在线程函数中使用了该对象。在线程函数中,我们先获取锁,然后进行一些操作,最后释放锁。这样可以确保在同一时刻只有一个线程在执行操作。
阅读全文