Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Multithreading 如果cond与pthread_cond_timedwait()的超时同时发出信号,该怎么办_Multithreading_Thread Safety_Pthreads_Race Condition_Condition Variable - Fatal编程技术网

Multithreading 如果cond与pthread_cond_timedwait()的超时同时发出信号,该怎么办

Multithreading 如果cond与pthread_cond_timedwait()的超时同时发出信号,该怎么办,multithreading,thread-safety,pthreads,race-condition,condition-variable,Multithreading,Thread Safety,Pthreads,Race Condition,Condition Variable,在pthreads中,如果条件变量'cond'发出信号并且pthread\u cond\u timedwait()的超时同时发生,该怎么办 pthread标准是否定义了行为 是条件变量的线程库特定行为吗 字面上的“同时”可能是不可能的,并且将取决于硬件。您是否真的关心实现是否将超时优先于信号,即观察信号,然后检查是否也发生了超时,然后对超时采取行动,即使它首先观察到了信号?(反之亦然)。在实时嵌入式系统中,当计时非常关键且中断处理的优先级非常重要时(如PIC的CCS等编译器具有操作ISR管理的指

在pthreads中,如果条件变量'cond'发出信号并且
pthread\u cond\u timedwait()
的超时同时发生,该怎么办

pthread标准是否定义了行为

是条件变量的线程库特定行为吗

字面上的“同时”可能是不可能的,并且将取决于硬件。您是否真的关心实现是否将超时优先于信号,即观察信号,然后检查是否也发生了超时,然后对超时采取行动,即使它首先观察到了信号?(反之亦然)。在实时嵌入式系统中,当计时非常关键且中断处理的优先级非常重要时(如PIC的CCS等编译器具有操作ISR管理的指令),可能会出现问题,但在非实时内核中,就像大多数Unix一样,这个问题应该是无关紧要的,而且您要问的是您的应用程序的健壮性