私はスレッド化(およびその点についてはC/C++)が初めてで、複数のスレッドを使用して共有変数にアクセスしようとしています。
主に、変数 char inputarray[100]; を作成しました。
スレッド 1: このスレッドは、stdin から 2 バイト バーストでデータを読み取り、inputarray に追加します。(ファイルをフィードして入力)
スレッド 2: このスレッドは、一度に 1 バイトずつデータを読み取り、計算を実行し、そのデータを出力配列に入れます。
スレッド 3: このスレッドは、出力配列から 2 バイト バーストでデータを出力します。(標準出力)
入力部分を試みて、構造体を渡して動作させましたが、構造体を使用せずに実行したいのですが、問題が発生しています。
インプットを下に置くことができれば、同様の戦略を使用してアウトプットを完了することができると確信しています。どんな助けでも大歓迎です。
以下は、入力スレッドの大まかなテンプレートです。
#include <stdio.h>
#include <pthread.h>
using namespace std;
void* input(void* arg) {
char reading[3];
fread(reading,1,2,stdin);
//append to char inputarray[]..???
}
int main() {
char inputarray[100];
pthread_t t1;
pthread_create(&t1, NULL, &input, &inputarray);
void *result;
pthread_join(t1,&result);
return 0;
}