ProducerConsumerパターン使って論理コアと同等数のスレッド数で回すだけじゃん
何が難しいのかさっぱりわからん