呼叫"旋转"是什么意思

use*_*823 1 c c++ concurrency

函数调用"旋转"是什么意思?它和阻塞一样吗?

这是我所指的背景:

/*
     * Obtain a free channel
     * This call spins till a free channel is obtained
     */
    chNum = _getFreeChannel(&tccNum);
Run Code Online (Sandbox Code Playgroud)

谢谢.

Som*_*ude 7

基本上要循环.旋转功能的作用是忙于等待循环.


Bat*_*eba 5

自旋是一种并发技术.本质上,函数循环直到满足所需条件.

如果旋转时间很长,它可能在计算上很昂贵,但如果预期旋转时间非常小且方差小,则可以优先考虑等待和通知惯用语(其中存在设置开销).