多线程逐行读取Crystal中的文件

0 parallel-processing multithreading file crystal-lang

我从Crystal Lang开始,我想知道是否可以像使用C#一样使用Parallel(和MaxDegreeOfParallelism选项)使多线程读取文件逐行读取。谢谢

Joh*_*ler 5

据我对C#的Parallel正确理解,它只是实现了许多类似任务的并发执行(最终实现了多线程执行)。即使在没有多线程的情况下,在Crystal中这显然也是可能的。在stdlib中,HTTP::Server使用它,例如,有几个分片用于作业处理。一旦多线程启动,这将使我们可以选择真正并行运行任务。 问题#6468建议如何构造此类并发任务,并可能还会配置要并行执行的任务数。

我不确定“多线程逐行读取文件”是什么意思。共享文件描述符以同时从多个线程进行访问听起来用任何语言来说都是危险的想法。您确定,C#Parallel可以做到吗?