Si se necesita acceso de bajo nivel a eventos X11, ventanas y entrada sin usar GTK, QT y otros, ¿se debe usar Xlib o XCB? ¿Cuáles son los pros y los contras de cada uno?¿XCB está listo para producción? ¿Debo usar Xlib en su lugar?
Respuesta
Puede usar ambos. XCB es más fácil de usar, tiene una mejor respuesta a un entorno multihilo pero carece de documentación, mientras que Xlib es una herramienta más antigua/compleja, mejor documentada y completamente implementada.
Actualmente estoy estudiando la API XCB y lo más difícil de hacer es encontrar documentos y buenas referencias API ..
Al final: si tu objetivo es el desarrollo más rápido, se debe utilizar Xlib, de lo contrario XCB está destinado a ser el futuro (pero todavía está lejos de serlo).
_... lo más difícil es encontrar documentos y buenas referencias API. .._ Muy cierto. Algunos de los tutoriales oficiales están llenos de errores y ni siquiera se compilan. [Ejemplo] (http://xcb.freedesktop.org/tutorial/events/) –
- 1. ¿Está ZeroMQ listo para producción?
- 2. ¿JRuby está listo para la producción?
- 3. ¿Está listo el nodo.js para producción?
- 4. ¿Aún no está G1GC oficialmente listo para producción?
- 5. ¿Delphi 2010 está listo para el uso de producción?
- 6. ¿Kafka está listo para el uso de producción?
- 7. ¿Visual Studio 2010 RC está listo para la producción?
- 8. ¿Cree que ASP.Net MVC está listo para la producción?
- 9. ¿LINQ-to-NHibernate está listo para el código de producción?
- 10. WebSockets servidor listo para producción en Java?
- 11. FileSystemWatcher: ¿está listo para usar el archivo?
- 12. ¿Qué debo hacer para vincularme con xlib?
- 13. es nhibernate 3.0 listo para producción
- 14. java.net.URLEncoder.encode (String) está en desuso, ¿qué debo usar en su lugar?
- 15. ¿HBase es estable y listo para producción?
- 16. Posición de ventana en Xlib
- 17. ¿Está el recolector de basura (G1) "listo para producción" en Java 6?
- 18. ¿Qué debo usar en lugar de sscanf?
- 19. ¿Debo usar Varnish en lugar de nginx?
- 20. ¿Debo usar NoSQL en lugar de MySQL?
- 21. ¿Debo usar String en lugar de TFilename?
- 22. sharedDispatcher no se encuentra en CCTouchDispatcher (Cocos2D 2.0 beta2), ¿qué debo usar en su lugar?
- 23. SQLAlchemy y django, ¿está lista para producción?
- 24. ¿Debo usar 'Integrated Security = True' en un entorno de producción?
- 25. Convierta e.printStackTrace() para usar log4j en su lugar
- 26. ¿Microsoft StreamInsight está listo para el horario estelar?
- 27. ¿Está Pylons listo para la empresa?
- 28. Consejos para usar commons-pool en producción
- 29. Elemento "alinear" es obsoleto o no estándar: ¿qué debo usar en su lugar?
- 30. Evaluar es malo ... ¿Qué debería usar en su lugar?
qt5.5.0 usa XCB en lugar de xlib. Así que supongo que xcb está listo para el uso de producción. – Jichao
Utilice XCB si desea un alto rendimiento ... y una dosis razonable de dolor debido a la falta de documentación (¡me encanta XCB, por cierto!). Además, una buena fuente de información sobre XCB parece ser el protocolo X en sí, ya que XCB es una capa bastante delgada, por lo que puedo decir –