私はクラス(A)のスレッドで私のアプリケーションにデータをストリームする関数を持っています。 データは、別のクラスのヘッダファイル(B)のカスタム構造体(StructStore)にコピーされる:私はブレークポイントを追加するとスレッド内の値をメインスレッドにコピーする方法を教えてください。
.H
class Data:
public:
StructStore DataStore;
の.cpp
Data dd;
StructStore DataIn; // data streams in
dd.DataStore = DataIn;
ここで(スレッド内の)値をチェックすると、データストアとDataInの両方で期待通りのものになります。
私が必要とするのは、これらの値を別のクラス(C)のスレッド外から呼び出すことです。私がしようとしています:
た.cpp
StructStore Result;
Data d;
Result = d.DataStore;
私はここの値をチェックすると、彼らは常にゼロですが。私はここで間違って何をしていますか?これらの値を安全にスレッドの外部にコピーするにはどうすればよいですか?
競合状態から身を守り、 'std :: mutex'のような保護メカニズムを使用したいと思うかもしれません。 –
あなたはどのスレッドライブラリを使用していますか? [最小限のコード](http://stackoverflow.com/help/mcve)または少なくとももう少し提供することは可能ですか? – coyotte508
私はUnrealエンジン用のプラグインを作成していますが、スレッドはFRunnableクラスを使用して実行されています。 https://docs.unrealengine.com/latest/INT/API/Runtime/Core/HAL/FRunnableThread/index.html – anti