`

Parallel ruby的并行 多线程处理插件

阅读更多
  有多个cpu的话希望提升性能,可以参考。之前听Rails envy就有点印象
用法:
#i -> 0..number_of_your_cpus
results = Parallel.in_processes do |i|
  expensive_computation(data[i])
end

#i -> 0..4
results = Parallel.in_processes(4) do |i|
  expensive_computation(data[i])
end

#same with threads (no speedup through multiple cpus, but speedup for blocking operations)
results = Parallel.in_threads(4) do |i|
  blocking_computation(data[i])
end

git地址:http://github.com/grosser/parallel/tree/master
分享到:
评论

相关推荐

    Ruby-ParallelRuby让并行处理简单和快速

    "Parallel Ruby"库正是为此目的而设计,它使得在Ruby中实现并行处理变得简单且高效。 Parallel Ruby库是一个强大的工具,允许开发者在Ruby程序中并行运行任务,从而显著提升性能。这个库的核心理念是将工作分解成可...

    云人群:我们其余人的并行处理

    在并行处理方面,Ruby提供了多种工具和库,如Parallel、Thread、Fork等,允许开发者轻松地进行多线程和多进程编程。其中,Parallel库是Ruby社区中广泛使用的并行处理工具,它支持多种并行模式,包括线程、进程、进程...

    ParallelProgramming:几个用C,UPC,Java,Occam-Pi(Kroc)和Ruby编写的并发程序

    3. **Java**:Java提供了内置的并行编程支持,主要体现在其多线程机制上。Java语言通过Thread类和Runnable接口实现了线程的创建和管理。此外,Java并发库(java.util.concurrent)提供了一系列高级工具,如Executor...

    .NET 4.0 技术亮点剖析

    通过使用 TPL,开发者可以轻松编写并行代码,如使用 `Parallel.ForEach` 方法并行处理集合中的元素,或者使用 `Task` 类创建和管理任务。 - **并行计算带来的挑战**:虽然并行计算能够提高程序的执行效率,但它也...

    c# 4.0权威指南

    为了支持并行编程,C# 4.0引入了一系列并发集合类型,如`ConcurrentQueue`和`ConcurrentStack`,这些集合类型被设计为线程安全的,可以在多线程环境中安全地使用,无需额外的同步机制。 #### 6. 并发编程库...

    Pro WPF in C# 2010

    - **并行编程**: 引入了System.Threading.Tasks命名空间,提供了新的并行编程模型,简化了多线程程序的编写。 - **动态语言支持**: 增强了对动态语言的支持,使得如Python、Ruby等语言可以直接在.NET平台上运行。 - ...

    .net framework4.0

    新增了许多类和接口,如Task Parallel Library(TPL)用于支持多线程并行编程,使得开发者能够充分利用多核处理器的优势,提高应用程序的计算能力。另外,还有System.Numerics命名空间,提供了高性能的向量和矩阵...

    Whats_New_In .NET_Framework_4

    **并行计算计划 (Parallel Computing Initiative)** - **任务并行库 (TPL)**:提供了基于任务的并行执行机制。 - **并行 LINQ (PLINQ)**:使 LINQ 查询可以在多个核心上并行执行。 - **协调数据结构 (CDS)**:...

    dotNetFx40_Full_x86_x64

    2. **多线程和并发编程**:新增了Task Parallel Library(任务并行库),使得异步编程更加容易,支持多核处理器的高效利用。 3. **动态语言支持**:引入了Dynamic Language Runtime(DLR),使得动态语言如Python和...

    java 1.6 源码

    例如,`Sun GC`(也称为串行GC)和`Parallel GC`(并行GC)在源码中进行了改进,提高了内存回收效率。此外,`CMS(Concurrent Mark Sweep)`收集器首次成为生产可用的选项,它在处理大量短期对象时能减少应用暂停...

Global site tag (gtag.js) - Google Analytics