次の「おもちゃ」のコードは、 POSIX タイマーを使用する大規模なコード ベースで発生している問題を表しています。
#include <time.h>
#include <errno.h>
#include <signal.h>
#include <iostream>
using namespace std;
int main()
{
struct sigevent sevp;
long threadId = 5;
sevp.sigev_notify = SIGEV_THREAD_ID;
sevp.sigev_notify_thread_id = threadId;
return 0;
}
g++
Linux マシンでコンパイルしようとすると、次のエラーが表示されます。
error: ‘struct sigevent’ has no member named ‘sigev_notify_thread_id’
理由はありますか?これsigevent
により、構造体には というメンバーが含まれていると思われsigev_notify_thread_id
ます。