Отладка проблемы безопасности потока на iOS - PullRequest
1 голос
/ 21 января 2012

У меня ошибка безопасности потока где-то в довольно большом наборе кода. Он воспроизводится как случайный сбой, просто прокручивая в моем CATiledLayer в течение нескольких секунд в симуляторе, и разрешим, блокируя мой код рисования в одном потоке (что не идеально, так как CATiledLayer разработан, чтобы быть многопоточным и мой код рисования достаточно медленный, чтобы в нем нуждаться).

Как мне отладить проблему безопасности потока? Я подозреваю, что где-то в моем коде лениво извлекаются (и кешируются) данные, которые рисуются, но это не сильно их сужает.

Я немного прочитал Руководство по программированию параллелизма, но не вижу ничего, что говорит об отладке, он просто говорит о том, как структурировать ваш код.

1 Ответ

1 голос
/ 21 января 2012

Какой метод параллелизма вы используете?GCD или NSThread?И если я не могу убедить вас использовать один поток для рисования, попробуйте использовать @syncronized в ваших методах установки / получения (или атомарных свойствах, если вы используете синтезированные установки / получатели).

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