Các thiết lập hiện tại đi một cái gì đó như thế nàyLàm thế nào để giới hạn số lượng các chủ đề được tạo cho một hoạt động Seq.map không đồng bộ trong F #?
array
|> Seq.map (fun item -> async { return f item})
|> Async.Parallel
|> Async.RunSynchronously
Vấn đề là, điều này có xu hướng tạo ra quá nhiều chủ đề và sụp đổ các ứng dụng theo định kỳ.
Cách giới hạn số lượng chủ đề trong trường hợp này (ví dụ: Environment.ProcessorCount)?
Tôi đang bối rối bởi điều này. Tôi đã được ấn tượng rằng F # đã sử dụng một số loại hồ bơi thread với một giới hạn số lượng bộ vi xử lý đã có. Không đúng? –
Như Zan đã đề cập ở trên, tôi tin rằng Async làm việc với một hồ bơi thread có một ràng buộc trên. Bạn có chắc chắn vấn đề không nằm trong 'f'? – Paul
Sau đó, câu hỏi trở thành, bạn có thể thiết lập giới hạn trên trên các thành viên của hồ bơi thread bằng tay? – Alexander