@senerg said in Можно ли запустить функцию в отдельном потоке, не останавливая поток, который ее вызвал?:
А с чем связана ненадежность?
Ненадежность связана с тем, что вам придется реализовать искусственный триггер на запуск действий через ожидание какого-то значения глобальной переменной в соседнем потоке. На каждый поток нужна своя переменная, иначе могут триггернуться не те потоки, какие бы вы захотели. А я так понял, заранее вы не знаете, сколько понадобится потоков, читай переменных. Нужно будет как-то останавливать потоки. Не будут же они ждать переменных вечно. Появятся сложности при отладке, т.к. в режиме записи запустится только 1 поток.
Вы хотите запускать скрипт/функцию в неопределенное количество потоков. Даже если это было бы возможно, сказать, что это неоптимальное решение - значит ничего не сказать.
Да, конечно же ещё вы можете дописывать ресурс со страницами каждый раз, когда увидите, что новая страница есть, перегружать ресурс и надеяться, что страницы будут добавляться быстрее, чем потоки скушают их все. Но все же лучшим решением будет распределить между потоками определенное количество страниц. Это хотя бы соответствует принципам работы многопотока в басе.