一个关于等待的高难问题!
先把思路说一下:
假设我是A(网站),要实现一个业务需求,需要用到C(数据库)的数据。但特殊的是,C不允许A直接访问。A要先将输入数据往B(叫“中间数据库”吧)的一个表(姑且叫“接口表”吧)中写入形成一个请求,然后等待C完成;而C端有一个线程不断扫描这个接口表,一旦发现有新的请求,就处理,然后将结果写回接口表;A检测到C已经完成刚才的请求,就解除等待状态,返回业务结果。
现在的要求是,当A的业务参数输入端输入后,按提交,此时应该弹出一个等待的窗口(层、或页面),用户除了等待,什么也不允许干,类似于模式对话框的效果,但不能关闭,意思是只能当前业务完成,才能进行其它操作;同时后台照样得完成往B中写请求,定时(3秒)查看C是否完成的标志等动作,检测C已经完成的标志,清除等待状态,返回结果并显示,界面恢复可使用。
请大家谈谈自己的看法,不胜感激!