Резьба бассейн и вилка в к
У меня есть программа, которая выполняет команду поиска с трубами и вилкой. Когда я использую одну основную pthread и одну pthread на поиск, я получаю следующие результаты (для 2 find) в pstree:
sysexplorer─┬─2*[find]
└─{sysexplorer}
когда я использую один основной pthread и пул потоков (с 10 потоками) для поиска, я получаю эти результаты (для 2 находок снова) в pstree:
sysexplorer─┬─2*[find]
└─11*[{sysexplorer}]
это верно? Я считаю, что это должно быть что-то вроде этого:
sysexplorer─┬─10*[find]
└─1*[{sysexplorer}] or sysexplorer─┬─11*[{sysexplorer}]
но у меня нет опыта, поэтому я не могу быть уверен.
вилка вызывается именно перед тем, как найти. это причина?
Если это не так, что мне делать?