Лучшая практика для приложения X11 — один XOpenDisplay на приложение или на окно?

Поэтому я работаю над созданием кода, который использует библиотеку X11 для работы с X-Windows в Linux. Я нашел несколько простых руководств, но они не содержат подробностей о передовых практиках для более практических вариантов использования.

Меня интересует одна вещь: должен ли я сделать один вызов XOpenDisplay для каждого приложения и передать указатель на Display, или это нормально, чтобы вызывать эту функцию для каждого окна верхнего уровня?

0

Решение

Хотя вы можете использовать более одного соединения с X-сервером в своей прикладной программе, есть веская причина не делать этого: каждому соединению назначается диапазон идентификаторов ресурсов (даже если ваш клиент не создает свои собственные ресурсы), а идентификатор ресурса 32-битное число, поэтому общее количество соединений ограничено в X11 (и обычно составляет от 256 до 512 на большинстве систем)

1

Другие решения

Вам нужно только XOpenDisplay один раз. Один дисплей может иметь много окон.

1

По вопросам рекламы [email protected]