У меня есть приложение, которое использует потоки. Теперь, когда программа сначала запускается, я хочу, чтобы она проходила настройку соединений с базой данных и еще что-то до нее, чтобы все, кто запускал программу, мог знать, была ли начата ошибка.Фоновый рисунок приложения с вилкой()
Я немного оглянулся и нашел несколько ресурсов, которые говорят: «Не смешивайте вилку и нити», в то время как другие говорят, что разветвление в linux будет только дублировать основной поток и оставить остальных в покое.
В случае последнего (где он просто дублирует основной поток), как же тогда потоки доступа к файловым уровням (глобальным) переменным? Не смогут ли потоки получить доступ к переменным, которые теперь находятся в адресном пространстве разветвленного процесса?
В конечном итоге цель состоит в том, чтобы сам прикладной фон после создания потоков. Если это невозможно, я могу поставить вилку перед созданием потока, просто хотел бы сделать это как можно позже.
Примечание: во время вилки потоки будут выполнять цикл sleep(), пока основной поток не поместит данные в общую переменную для их обработки. Поэтому, если сон прервется, они не пострадают.
Ничего себе, я чувствую себя глупо, не думая сначала о «вилке», а затем просто подождите, пока ребенок не инициализируется до выхода из решения. Это очень чистое и эффективное решение. Спасибо :-) – Patrick