我正在运行一个程序,我的if条件被错误地评估。您可以从下面的代码中看到,虽然变量N1::fRunningPSWave
的值为true
,但它不会根据if
条件执行正确的代码。知道可能导致这种情况的原因。
Breakpoint 4, pswIsMaster () at swqueue.cc:530
530 if (N1::fRunningWave)
(gdb) n
533 return 1;
(gdb) l
528 U pswIsMaster()
529 {
530 if (N1::fRunningWave)
531 return pthread_equal(SWave::tidMasterWave, pthread_self());
532 else
533 return 1;
534 }
535
(gdb) p N1::fRunningWave
$43 = true