Dan*_*elT 6 locking scheduler python-3.x apscheduler
这是我的问题:我正在使用APScheduler库在我的应用程序中添加预定作业.我有多个作业同时执行相同的代码,但具有不同的参数.当这些作业同时访问相同的方法导致我的程序不正常工作时,会出现问题.
我想知道是否有办法在Python 3.4中锁定一个方法,这样一次只有一个线程可以访问它?如果是这样,你能发一个简单的示例代码吗?谢谢.
Sta*_*nov 13
您可以使用基本的python锁定机制:
from threading import Lock
lock = Lock()
...
def foo():
lock.acquire()
try:
# only one thread can execute code there
finally:
lock.release() #release lock
Run Code Online (Sandbox Code Playgroud)
或者使用上下文管理:
def foo():
with lock:
# only one thread can execute code there
Run Code Online (Sandbox Code Playgroud)
有关更多详细信息,请参阅Python中的Python 3锁定对象和线程同步机制.
| 归档时间: |
|
| 查看次数: |
6755 次 |
| 最近记录: |