我有一个名为XClient的类,用Xt(X Tools Intrinsic库)编写,用于设置多重连接。这个XClient类用于扩展XClient的OSF / Motif GUI(因此GUI可以在套接字上进行通信)。
我正在尝试迁移到GTK +环境,该环境由于可移植性原因而不使用Xt库。是否仍然可以创建一个包装器以允许GTK +使用Xt库调用,或者这是不是吗?
答案 0 :(得分:1)
我不希望Xt和GTK +在同一个过程中运行良好或完全没有效果。他们都试图“拥有”X显示器,主事件循环等等。
答案 1 :(得分:0)
您应该能够通过调用XtAppInitialize()
独立于GTK运行Xt,这将打开自己与X服务器的连接,这将同时视为独立客户端。
您可以通过将XtAppMainLoop()
的调用放在单独的线程中来处理单独的事件循环。请注意,除了那个线程以外的任何地方都不要尝试使用它,因为我不确定Xt是否是线程安全的。 (可能到现在为止;近20年来我没有分开Xt,当时也没有。)