Привет!
В настоящее время я портирую плагин для веб-браузера с Win32 на MacOSX. Одной из особенностей плагина является то, что когда плагин загружается, он порождает отдельный процесс, который служит «движком» плагина и выполняет операции рисования в окне плагина (в частности, присоединяя контекст OpenGL к окно родительского процесса и выполнение команд рендеринга OpenGL в этот контекст). Мы делаем это потому, что плагин обычно загружается как поток внутри процесса браузера, поэтому сбои в плагине могут привести к сбою всего браузера. Разделив «тяжелую работу» на отдельный процесс и сделав код плагина очень тонким, мы можем защитить пользователей от таких сбоев.
Я бы хотел сохранить эту архитектуру рендерера дочерних процессов в MacOSX, но я слышал неприятный слух (связанный с веб-браузером Google Chrome), что MacOSX не позволяет процессу передавать доступ к своим окнам. в другой процесс. Мой собственный поиск в этом пространстве был безрезультатным; если кто-то знает об этой проблеме и может дать какой-либо совет о том, как достичь этой цели, или более убедительное «не может быть сделано», это было бы чрезвычайно полезно.
Спасибо за помощь!