2
すべてのpythonスレッド(CPython内)はGILの下にあります。ctypesで作成されたスレッドは、PythonのGILの下にもありますか?
スレッドがで作成された場合はどうなりますか?
例えば、pythonはC Library
で以下の関数を呼び出し、関数はC
の領域ではなくpythonを作成します。
#include<thread>
int createUnitTestThread(int sasAddr){
sasEngine->thread = new std::thread(....);
return 0;
}
これは同じかどうかですか?
ありがとうございました!もう1つの疑問は、 'C++スレッド 'が' GIL'の中にいなくても、同じ 'PID'を持つ' python interpreter'で動いているのですか? – SangminKim
あなたが明示的に何とか登録しない限り、PythonがPythonで作成されていないスレッドからPythonを呼び出すとBad Things™が発生することは間違いありません。 – o11c
@asleea:スレッドである、はい(Linuxでは、すべてが実際にはタスクであるため、少し混乱しているので、別のプロセスIDを持っていると言えるかもしれませんが)。 –