2017-02-10 3 views
2

Processorは、単一頂点で協調的かつ非協調的であることができますか?協同性はProcessorの性質であり、ProcessorSupplierは同じタイプのProcessorを返す必要はないからです。またはそれは?単一頂点の協同非協調プロセッサー

これを利用する場合には、奇妙な回避ですが、ただ不思議...

答えて

1

ExecutionServiceでこのコードを考える:

Map<Boolean, List<Tasklet>> byCooperation = 
    tasklets.stream().collect(partitioningBy(Tasklet::isCooperative)); 

ProcessorTasklet::isCooperativeの実装を与えられた:

return processor.isCooperative(); 

プロセッサの個々のインスタンスは、その協調性に従って処理されます。実行サービスは実際にどのタスクレットが同じ頂点に属しているかを気にせず、協調性の宣言に従って各タスクレットを扱います。

簡潔に言えば、同じ頂点に協力/非協力プロセッサを混在させることができます。