擅长:python、mysql、java
<p>创建一个锁以控制对列表的访问:</p>
<pre><code>import threading
def __init__(self, ...):
# We could use Lock, but RLock is somewhat more intuitive in a few ways that might
# matter when your requirements change or when you need to debug things.
self.numberLock = threading.RLock()
...
</code></pre>
<p>当你需要保存一个本地列表时,保存一个本地变量。局部变量不会受实例属性更新的影响;请使用局部变量,直到要检查更新的值:</p>
^{pr2}$
<p>每当您需要更新列表时,请按住锁并用新列表替换该列表,而不要更改旧列表:</p>
<pre><code>with self.numberLock:
self.numbers = newNumbers
</code></pre>
<hr/>
<p>顺便说一下,我在这里使用camelcase来匹配您的代码,但是Python的惯例是使用<code>lowercase_with_underscores</code>而不是{<cd2>}作为变量和函数名。在</p>