我正在开发一个内部连接到服务器的GUI应用程序。用户可以使用GUI应用程序发送请求并在连接后从服务器获取数据。GUI应用程序中的事件处理线程C++
首先,我们使用单线程设计,点击按钮时,应用程序解析接收到的事件,并相应地向服务器发送请求以获取所需的数据。
在这一点上,我们还在做原型机的工作,但在这种工作方式在想下面的变化 -
有当用户点击一些东西,接收事件的事件处理线程。
此线程将处理事件并调用相应的函数并向服务器发送请求。 (所有这些都将发生在事件处理程序线程的上下文中)
如何处理应用程序仍在等待服务器数据时收到的事件?我正在考虑让事件处理程序线程拒绝前一个正在进行的请求并为接收到的新事件提供服务。 从用户的角度来看,当用户点击一个新的按钮,当前一个按钮还在等待响应时,我们应该转储我们之前做的事情并处理新的按钮点击。
请对此发表评论。这是我第一次在客户端应用程序上工作,并请求您输入这个。
您可以简单地在另一个线程中发送请求。 – ikh 2014-08-31 13:22:43
对于您的应用程序来说,忽略第一次调用服务器的结果是恰当的,即像Web浏览器一样,不存在忽略它的副作用。 – Steve 2014-08-31 13:22:49