GCCとドックロスを使用して、WindowsおよびLinux上で アプリケーションをクロスビルドするPythonスクリプトを作成しました。ビルドコードの時間を短縮したいので、私はスレッドモジュールを使って4つの構築プロセス(LinuxとWindows、32と64ビット)を実装します。Pythonスレッディングのシグナルまたはミューテックス
しかし、2つのGCCビルディングオブジェクト(Linux 32ビットと64ビット)が競合状態にあることがわかりました。同時に2つの建物をやりたい場合は、いくつかのエラーが発生し、同じ状況がドッククロス構築プロセスで発生します。
2つのドッククロス構築オブジェクトは競合状態にあります。
私はPythonで の2つのスレッドを結合スレッドとして実装することができる関数やモジュールはありますか?1つのスレッドが終了すると、その結合スレッドにシグナルが送られますか?
以下のコードと同様に、私はworker [0]とworker [1]にシグナルメカニズムがあり、worker [2]とworker [3]の間にも存在します。
def main():
linux32_builder = builder(
"linux32", "make CFLAGS=-m32 all", "./", "./", "/root/crossCompile/releaseFolder/")
linux64_builder = builder(
"linux64", "make all", "./", "./", "/root/crossCompile/releaseFolder/")
win64_builder = builder(
"win64", "dockcross-windows-x64 make all", "./", "./", "/root/crossCompile/releaseFolder/")
win32_builder = builder(
"win32", "dockcross-windows-x86 make all", "./", "./", "/root/crossCompile/releaseFolder/")
# linux32_builder.copySourceCodeFromShare()
Worker = []
Worker.append(Make_Thread(1, linux32_builder))
Worker.append(Make_Thread(2, linux64_builder))
Worker.append(Make_Thread(3, win64_builder))
Worker.append(Make_Thread(4, win32_builder))
for i in Worker:
i.start()
i.join()
こんにちはCris、 私の問題はすべてのスレッドで発生しています。作業ディレクトリは1つのプロセスのグローバル変数であるため、問題が発生します。だから、私は実装をマルチプロセスに変更しました。このスクリプトはクロスコンパイルに関するものです。 私のワークフローは、[ここ](https://redliu312.github.io/cross-compile/)に記載されています。 –