Cancellation point的具体含义是什么

xtang,您好!在QNX的文档到处都能看到Cancellation point这个字眼,这个词的具体意思是什么?

当用pthread_cancel()一个线程时,这个要求会被pending起来,当被cancel的线程走到下一个cancellation point时,线程才会被真正cancel掉。

那么哪些地方(或者说什么时候)属于取消点(cancellation point)呢?可否列举一个简单的取消点例子。

QNX 的库程序说明手册里,每一个库函数都有一个“safety"的部份,告诉你这个函数是不是 Cancellation point。

详细见:
http://www.qnx.com/developers/docs/6.4.0/neutrino/lib_ref/about.html