dsimcha Wrote: > == Quote from Jerry Quinn ([email protected])'s article > > I'm looking at porting an app that maintains a work queue to be processed > > by one > of N engines and written out in order. At first glance, std.parallelism > already > provides the queue, but the Task concept appears to assume that there's no > startup > cost per thread. > > Am I missing something or do I need to roll a shared queue object? > > Not sure if I'm misunderstanding what you're asking, but I'll answer the > question > I think you're asking. std.parallelism's Task can be executed in two ways. > executeInNewThread() does start a new thread for every Task. However, you can > also submit a Task to a TaskPool and have it executed by an existing worker > thread. The whole point of using TaskPool to execute a Task is to avoid > paying > the thread start-up cost for every Task.
The question I was asking was how to execute a huge amount of per-thread initialization once per thread in the TaskPool framework.
