我的程序中有一个主循环,它从 dbus 调用这个方法: dbus_connection_read_write_dispatch 我有一些注册的回调,当消息到达时被调用。在此回调中,我还处理响应并发送回响应。问题是有时它需要很长时间,所以它可能会阻止接收来自 DBUS 的消息。问题 - 我可以从多个线程在同一个连接上调用 dbus_connection_read_write_dispatch() 方法吗?然后可能会在处理前一个 DBUS 消息时接收到新的 DBUS 消息。或者也许更好的想法是在另一个线程中处理响应而不是主循环,从回调被调用?
谢谢