Являются ли каналы Haskell `Control.Concurrent.Chan` безопасными для нескольких читателей/производителей?

Мне нужно собрать параллельную систему с одним общим Control.Concurrent.Chanмежду потоками. Будет только один потребитель и много производителей. Глядя на документациюChan, я не увидел никаких предупреждений о количестве потребителей и производителей, которые могут работать на одном и том же канале, и исходный код, похоже, использует «безопасные» средства доступа по умолчанию для MVars, поэтому я думаю, что можно с уверенностью предположить, что ограничений быть не должно, но я не уверен. Итак, мой вопрос... знаете ли вы, безопасны ли каналы haskell (в целом) для нескольких читателей и производителей, пожалуйста?

9
задан Riccardo T. 8 March 2012 в 10:55
поделиться