4
具體來說,我正在談論Python。我試圖通過看到一個對象的值而不用傳入它來攻擊一些東西(只是一點點),我想知道是否線程安全地使用本地線程來做到這一點。另外,你怎麼去做這樣的事情呢?線程是否表示線程安全?
具體來說,我正在談論Python。我試圖通過看到一個對象的值而不用傳入它來攻擊一些東西(只是一點點),我想知道是否線程安全地使用本地線程來做到這一點。另外,你怎麼去做這樣的事情呢?線程是否表示線程安全?
否 - 局部線程表示每個線程都獲取其自己的該變量的副本。使用它(至少通常)是線程安全的,只是因爲每個線程都使用自己的變量,通過與其他線程可訪問的名稱相同的名稱與變量分開。 OTOH,它們不(通常)用於線程之間的通信。
所以,我可以使用'my_psuedo_global = threading.local()'在module_x中設置一個變量,然後稍後以某種方式在module_y中訪問它,而不會破壞線程安全嗎? – orokusaki 2010-09-25 18:12:53
並非如此 - 雖然您當然可以通過(僞)全局將一個線程局部變量的值傳遞給另一個線程變量,但您需要像以前那樣同步對全局的訪問。 – 2010-09-25 18:23:31