pthread について質問があります。malloc を使用してスレッド内に変数を作成し、そのポインターを共有構造体 (つまり fifo) に渡す場合、thread-1 によって渡されたポインターは thread2 によってアクセスされますか?
上記の質問のためにコーディングする必要があることに注意してください。スレッドをよりよく理解しようとしているだけです。以下は私が考えていることです。環境はpthread、c、およびlinuxです
私の知る限り、スレッドは親プロセスのメモリを共有しています。その場合は、以下が正しいはずです。
void *thread-1(void *pointer)
{
int *intp = malloc(4);
send_to_fifo(intp);
}
void *thread-2(void *pointer)
{
int *iptr;
iptr = read_from_fifo();
do_something(iptr);
free(iptr);
}