OpenMP の parallel for の最中に GUIを更新したい場合があります。ループの全てでコールバックすると、クラッシュしてしまうので、メインスレッドの時だけ呼ぶようにすると大丈夫なようです。
int step = 0;
#pragma omp parallel for
for (int j=0; j<100; j++)
{
#pragma omp atomic
step++;
if (omp_get_thread_num() == 0) gui_callback( step );
}