Печать выписок из журнала в консоли / файле - PullRequest
2 голосов
/ 23 августа 2011

Я просто хотел подтвердить, что использование операторов NSLog для печати журнала на консоли замедляет работу приложения? Кроме того, будет ли он вести себя так же, если вместо входа в консоль я зарегистрирую их в файле.

1 Ответ

5 голосов
/ 23 августа 2011

Да, печать многих строк журнала на консоли во внутренних циклах вашего кода, особенно через соединение отладчика USB, несколько замедлит выполнение. (USB I / O может блокироваться с точки зрения приложения).

Что касается ускорения регистрации в файле, iOS принимает операторы NSLog, а также фильтрует их в общий журнал консоли устройства, поэтому они уже отправляются на диск, но это, вероятно, буферизуется более разумно, потому что что происходит в производственных системах.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...