我正在使用Python的asyncio,并试图理解run_in_executor函数和默认的ThreadPoolExecutor来异步处理阻塞任务。我关心的是访问这些任务中的共享变量。
我的理解是:当我将 run_in_executor 与 ThreadPoolExecutor 一起使用时,任务在单独的线程中执行。因此,为了确保线程安全并防止竞争条件,我应该在访问共享变量时使用锁等同步原语,就像使用线程模块一样。
我的理解是否正确,或者 asyncio 在这种情况下处理共享变量是否有所不同?