Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/104.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
Ios 调度信号量线程安全吗_Ios_Multithreading_Grand Central Dispatch - Fatal编程技术网

Ios 调度信号量线程安全吗

Ios 调度信号量线程安全吗,ios,multithreading,grand-central-dispatch,Ios,Multithreading,Grand Central Dispatch,我所说的信号量是这样初始化的 dispatch\u semaphore\u t signal=dispatch\u semaphore\u create(0) 因此,这个信号变量可以是直接来自不同线程或队列的dispatch\u semaphore\u wait和dispatch\u semaphore\u signal 注意:我确实发现文档中说“调度队列本身是线程安全的”。但是找不到任何关于分派信号量的信息,它必须是线程安全的,否则就没有意义了 使用信号量的唯一方法是在一个线程上调用dispa

我所说的信号量是这样初始化的

dispatch\u semaphore\u t signal=dispatch\u semaphore\u create(0)

因此,这个信号变量可以是直接来自不同线程或队列的
dispatch\u semaphore\u wait
dispatch\u semaphore\u signal


注意:我确实发现文档中说“调度队列本身是线程安全的”。但是找不到任何关于分派信号量的信息,它必须是线程安全的,否则就没有意义了


使用信号量的唯一方法是在一个线程上调用
dispatch\u semaphore\u wait
,在另一个线程上调用
dispatch\u semaphore\u signal
。从同一个线程调用这两个函数是不可能的(好的,这是可能的,但它将是无意义的和不起作用的)。

它必须是线程安全的,否则就没有意义了

使用信号量的唯一方法是在一个线程上调用
dispatch\u semaphore\u wait
,在另一个线程上调用
dispatch\u semaphore\u signal
。从同一个线程调用这两个线程是不可能的(好吧,这是可能的,但这将是毫无意义的和不起作用的)