某所で話題に上がったので軽くまとめてみる 以下のようなテストプログラムを走らせてみる。nice値5とnice値10のスレッドが ビジーループを何回回すことができるか競争するというプログラムである struct thread_param { int prio; long counter; }; #define barrier() __asm__ __volatile__("": : :"memory") void* loop(void* _param) { struct thread_param *param = _param; setpriority(PRIO_PROCESS, 0, param->prio); usleep(1000); for(;;) { param->counter++; barrier(); } return NULL; } int main() { pthread