-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
scijava/incubator
#33Milestone
Description
Most existing Ops rely on DefaultChunker when they wish to multithread a process. This process is more complicated to introduce in scijava-ops because:
- It requires all ops that want to multithread to require an
ExecutorServiceas a parameter, something that could/should be injectable by theOpService. - The tests for this
Opintroducejunitbenchmark; it would be nice if we did not have to introduce this.
There are a few different approaches that we can take:
- Create some sort of static method that mimics the behavior of
Chunk - Add support for what is going on in Unify multithreading handling imglib/imglib2-algorithm#81
Would it be possible to create a special mutlithreading OpDependency that, upon discovery, the matcher could inject its ThreadService into? i.e. if you had a
@OpDependency(name = "thread.chunker")
private NullaryComputer<Chunk> chunkerOp;
Ops could find a Computer that takes an ExecutorService as input and wrap that into a NullaryComputer by injecting its ExecutorService?
Metadata
Metadata
Assignees
Labels
No labels