Вы пишете код других процессов, или они являются чем-то, что вы не можете изменить?
Если вы можете, я бы подумал изменить их так, чтобы они принимали какие-то сообщения (даже через стандартные потоки), чтобы они хорошопрекратить по запросу, уволив детей, если они имеют, самостоятельно.
Я не считаю этот "процесс уничтожения" чем-то чистым.