Я создаю приложение для Mac OS 10.6, которое будет использовать OpenGL. Я бы хотел офшорный рендеринг во вторичную очередь отправки (вместо основного потока).
Из того, что я понимаю, мне нужно использовать локальный контекст OpenGL для работы с графикой. Мой план состоит в том, чтобы получить ссылку на него в моем первом блоке, а затем снова и снова использовать один и тот же экземпляр.
Однако очереди и потоки отправки не совпадают, и отладчик Xcode 4 показывает, что очередь может использовать несколько потоков. Поэтому я не уверен, что то, что я делаю, безопасно (хотя я считаю, что только параллельные очереди могут использовать несколько потоков).
Есть ли гарантия, что все блоки, отправленные в последовательную очередь, отправляются в один и тот же поток? Должен ли я вместо этого получить текущий контекст OpenGL и назначить его для моего NSOpenGLView
в каждом кадре?