Количество заявлений на печать Fork () [duplicate]

Существует несколько способов совместного использования данных.

  1. Вы всегда можете обмениваться данными с помощью NSUserDefaults. Задайте значение, которое вы хотите использовать, по отношению к выбранному вами ключу, и получите значение из NSUserDefault, связанное с этим ключом в следующем контроллере представления.
    [[NSUserDefaults standardUserDefaults] setValue:value forKey:key]
    [[NSUserDefaults standardUserDefaults] objectForKey:key]
    
  2. Вы можете просто создать свойство в viewcontrollerA. Создайте объект viewcontrollerA в viewcontrollerB и назначьте это значение этому свойству.
  3. Вы также можете создавать пользовательские делегаты для этого.
-2
задан undur_gongor 22 September 2015 в 21:27
поделиться

3 ответа

Вот что делает ваш код:

main->doit()->Fork()->Fork()->printf()->return->printf()->exit()
                |       |
                |       ----->printf()->return->printf()->exit()
                |
                ----->Fork()->printf()->return->printf()->exit()
                        |
                        ----->printf()->return->printf()->exit()

Как вы можете видеть, у вас есть в общей сложности 8 вызовов printf().

Было бы проще для вы увидите, что происходит, если вы решили печатать различные строки в своих функциях main и doit.

Установка точки останова при каждом вызове printf() - еще одна эффективная стратегия для определения этих типов проблемы.

6
ответ дан Caleb 26 August 2018 в 04:34
поделиться

Вы создаете процесс # 1. Прежде чем печатать что-либо, процесс №1 вызывает fork() и генерирует клон, который мы будем называть процессом №2. Оба процесса # 1 и # 2 снова вызывают fork(), клонируя в процессы # 3 и # 4. Теперь у вас есть 4 процесса, и каждый из них дважды печатает hello. Сколько hello напечатано?

1
ответ дан Havenard 26 August 2018 в 04:34
поделиться

Сначала вы вызываете fork, и ваш один процесс вилки на два. Затем вы вызываете fork в каждом результирующем процессе, и у вас всего 4. Затем 4 процесса снова печатают привет, возвращают и снова печатают привет, в общей сложности 8 hellos.

5
ответ дан Rikki Gibson 26 August 2018 в 04:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: