初稿发表于:2019-04-09

#pragma omp critical [ name ]  newline
   structured_block

简介

CRITICAL指令指定一块同一时间只能被一条线程执行的代码区域

  • 如果一条线程正在一个CRITICAL区域执行而另一个线程到达这个区域,并企图执行,那么它将会被阻塞,直到第一个线程离开这个区域.
  • 命名是可选项,使不同的CRITICAL区域共存
  • 命名是全局标志符.具有相同命名的不同的CRITICAL区域被当作同一个区域
  • 所有未命名CRITICAL区域被当作同一个区域