0

次のように「聞こえる」コードがあります。

スレッド 1

now = rdtsc();
for_each_member_in_a_list {
   if ( member_in_list.deadline() <= now ) {
      do_something;
   }
}

スレッド 2

now = rdtsc();
for_each_member_in_a_list {
   member_in_list.updatedealine( foo(now, ...) );
}

これは過去にうまく機能していましたが、現在は SMP システムでこのコードが意図したとおりに機能しません。CLOCK_MONOTONIC で clock_gettime を使用すると思いますが、最初に他のヒントを聞きたいと思います。

4

1 に答える 1