crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
> тестирование toolchain
igor_bogomolov
  опции профиля:
сообщение 22.9.2011, 23:47
Сообщение #11


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата(BRE @ 23.9.2011, 0:38) *
В каждый момент времени существует либо parent процесс, либо parent процесс и ОДИН child-процесс!
Ну это понятно.
Вопрос в том, как при этом ведут себя потоки ввода/вывода. Я же не отвязываю порожденные процессы от них. Поэтому все что писалось в поток из родительского процесса дублируется существующим дочерним.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 22.9.2011, 23:52
Сообщение #12


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


Цитата(BRE @ 23.9.2011, 2:38) *
В каждый момент времени существует либо parent-процесс, либо parent-процесс и ОДИН child-процесс!

если насчёт нереентерабельности, то я просто return не заметила. но бардака это не отменяет и fork делает именно то, что я написала выше.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 22.9.2011, 23:58
Сообщение #13


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

Спасибо сказали: 264 раз(а)




Репутация:   44  


Цитата(igor_bogomolov @ 23.9.2011, 0:47) *
Вопрос в том, как при этом ведут себя потоки ввода/вывода. Я же не отвязываю порожденные процессы от них. Поэтому все что писалось в поток из родительского процесса дублируется существующим дочерним.

Согласен. Перед форком буферу вывода стоит делать flush. :)
Тогда не будет такого эффекта при перенаправлении в файл.


Цитата(Iron Bug @ 23.9.2011, 0:52) *
но бардака это не отменяет и fork делает именно то, что я написала выше.

Так в чем тогда бардак? Каждый тест выполняется последовательно в своем процессе.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 23.9.2011, 0:09
Сообщение #14


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата(BRE @ 23.9.2011, 0:58) *
Согласен. Перед форком буферу вывода стоит делать flush.
flush в стандартном СИ нет, а на момент написания кода fflush(stdout) сделать не догадался. Завтра на работе проверю, просто что бы убедиться. А так я уже писал, что переделал тесты и теперь все выполняется в одном процессе и в одном потоке.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V  < 1 2
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


17 чел. читают эту тему (гостей: 17, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 18.1.2025, 22:45