問題タブ [pthreads-win32]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3968 参照

pthreads-win32 - pthread win32 のインストール

このガイドに従って pthread win32 をインストールしようとしました。

ファイルをに、pthreadVC2.dllファイルをに追加しました。リンカーに追加の依存関係を入力しましたが、プロジェクトに pthreads.h ファイルを含めることができませんでした。Visual Studio はこのファイルを認識しません。どうしたの?C:\WindowspthreadVC2.libC:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\libpthreadVC2.lib

助けてもらいたいです。

0 投票する
1 に答える
249 参照

c++ - pthread_mutex がタイムアウトを待っていない

次のコードがあります。

次に、次のようにテストしてみました。

その結果、「LOCKED: true \n DONE: false」と出力ETIMEDOUTされ、エラーになります。ロックできない場合、6600 ミリ秒の間ブロックすることになっています。

私が間違っていることはありますか?std::mutexこのミューテックスは IPC 同期/イベント (WinAPIのCreateEvent.

0 投票する
1 に答える
367 参照

configure - Autotools を使用した Log4cpp のビルド: pthreads が見つかりません

コミュニティ、

http://log4cpp.sourceforge.net/からLog4cpp ソース パッケージをダウンロードしましたが、このライブラリのビルドに問題があります。そのために、cygwin-bash.exe を開き、ソース パッケージのルートに移動して、./configure と入力しました。多くの出力が得られますが、終了します

configure: エラー: pthreads が見つかりません。現在これが必要です

ここで、 https: //www.sourceware.org/pthreads-win32/ から POSIX pthreads をダウンロードし、すべての dll を MinGW の bin-Folder に貼り付け、すべてのヘッダーをすべての .lib の MingGW の include-Folder に貼り付けました。 -MinGW のフォルダですが、それでも動作しません。

誰でも私を助けることができますか?大いに助けていただければ幸いです。

0 投票する
1 に答える
444 参照

c - pthread_cond_wait でスレッドをキャンセルすると、MinGW でアクセス違反が発生する

Windows (Windows 7 - 32 ビット) でアクセス違反が発生し、プログラムが停止します。MinGW の下で gcc 4.8.1 でコンパイルされた C コードです。pthreads-w32 2.9.1 を使用します。いくつかのスレッドが同時に動作しており、他に明らかな問題はありません。数日間は問題なく動作することもあれば、数時間で失敗することもあります。コードはいくつかの Linux アーキテクチャでコンパイルすることもできますが、問題はありません。デバッガーの下でプログラムを実行することも非常に困難です。

以下は、クラッシュが発生する関数です。

クリーンアップ関数は次のとおりです。

Dr.MinGW 0.7.3 で実行しており、レポートは次のとおりです。

Dr.MinGW は、timeout_lector の 214 行目を通過するスタック トレースで報告します。コードの pthread_cond_wait 行に対応します。

このスレッドは継続的に作成され、いくつかは並行して作成されます。キャンセルできるまでしばらく待機し、時間が経過すると変数を変更し、キャンセルされるまで待機します。これは、別のスレッドによってほぼ即座に行われます。待機に使用でき、さまざまなシステムに移植できるキャンセル可能な関数はあまりないため、pthread_cond_timedwait を選択しました。しかし、問題は 2 回目の無期限の待機にあるようです。

同様の問題を検索しましたが、同じ問題はないようです。
pthread_cond_wait: ランダム セグメンテーション エラーpthread_cond_wait() をキャンセルするとPRIO_INHERIT
ミューテックスでハングする

誰かがこれを手伝ってくれたら本当にありがたいです。

0 投票する
2 に答える
1464 参照

makefile - CppuTest: 最終リンク中の pthread への未定義の参照

私は cppuTest の初心者で、実際には CppuTest ルート ディレクトリ内に ./examples をビルドしようとしています。ソース ファイルとテスト ファイルは問題なくコンパイルされますが、リンクの最終段階で次のエラーが発生します。

Windows 7 で MinGW を使用しています。MinGW には pthread.a ライブラリも含まれています。私のメイクフィルは次のようになります。

ご覧のとおり、pthread lib は LDFLAGS を使用してリンカに渡されます....

誰か似たような経験?それとも問題がどこにあるか知っていますか?どんなヒントにも感謝します!

0 投票する
1 に答える
389 参照

c - pthread_cancel および pthread_join でクラッシュする例のウィンドウ x64 ビルド

バージョンpthreadVC.libで動作する小さなプログラムを作成しました。Win32Visual Studio 2013 を使用しています。

同じプログラムのプログラム設定を変更x64し、pthreadVC2.lib (x64 構成用) をリンクpthread_joinすると、使用した参加の代わりにプログラムがクラッシュしましpthread_cancelたが、同じ問題が発生しました。また、x64用に自分でpthreadを構築し、そのライブラリをリンクしましたが、それでも同じ問題があります。

私のテストコード

x64構成で取得するエラーは

Pthread64_bit.exe の 0x0000000180002C70 (pthread_dll.dll) で未処理の例外: 0xC0000005: 場所 0x000000000000001A を読み取るアクセス違反。

編集:また、C の pthreads から例をコピーしました – 最小限の作業例 で、実行しようとしましたが、同じエラーが発生しましたpthread_join

それで、他に必要な設定があるか、x64または私が見逃している場所があるか教えていただけますか?

0 投票する
1 に答える
3852 参照

windows - MinGW との pthreads 静的リンク

「Win32 用の pthreads」を MinGW32 でコンパイルされたアプリケーションに静的にリンクしたいので、アプリケーションを実行するために pthreadGC2.dll は必要ありません。

ここからダウンロードした pthreads の最新リリース 2.9.1 を使用しています。libおよび include ファイルは MinGW の lib および include ディレクトリにコピーされます。

その方法を Web で検索すると、 -static-libgcc -static-libstdc++ フラグの使用を指示するこのスレッドに出くわしました。これは機能しません。つまり、アプリはコンパイルされますが、pthreadGC2.dll が存在しないと実行できません。

また、-static -static-libgcc -static-libstdc++ の使用も推奨しています。これは、次のエラーでコンパイルされません。

誰もそれを行う方法を知っていますか?

ところで、2.9.1 リリース (pthreads-w32-2.9.1-1-mingw32-dl​​l.tar.lzma 内) からダウンロードした pthreadGC2.dll をアプリのフォルダーにコピーするだけでは十分ではありません。アプリを実行するには、別の dll (libgcc_s_dw2-1.dll) もコピーする必要があります。これは私にとって非常に悪いことです。ユーザーがアプリを実行するたびに、これら 2 つの DLL をユーザーに持たせたくありません。

これが私のコードです:

そして私のメイクファイル: