2016-06-07 74 views

回答

2

如果我選擇在Cython腳本中釋放GIL,我必須考慮哪些因素?

在Cython程序中釋放GIL是否會增加危險或風險?

你不能安全地做任何事情,做任何有趣的Python對象。你不能安全地做任何接觸你的對象的數據而不知道它是安全的(可能用你自己的鎖)。

https://docs.python.org/2/c-api/init.html#thread-state-and-the-global-interpreter-lock將提供一些信息。

另外我該如何指定要產卵的線程數?

創建線程是完全分開的。你可以用threading模塊來做到這一點,或者你可以用其他方式來做到這一點。

+0

我看到感謝的見解。似乎最好限制釋放GIL,嚴格限制與C類型的CPU綁定問題 – DolphinGenomePyramids