Представим что Thread Pool не является владельцем spsc очереди (то есть, сама очередь лежит где то в другом месте), если очередь уничтожится раньше, чем класс тред пула освободит потоки, то это может привести к хуйне
В принципе, если я сам реализую Job System, то я могу дать такую гарантию, но что если разработчики будут использовать свой тред пул с моей SPSC очередью
В общем, я пришел к выводу, что Job System должна содержать обычную queue очередь откуда будут выниматься таски и кормиться в Thread Pool причем пачками, а Thread Pool должен уже хранить SPSC очередь