以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  高级功能研发区  (http://222.73.7.161/bbs/list.asp?boardid=5)
----  [求助]事件触发的程序与原来程序的先后关系  (http://222.73.7.161/bbs/dispbbs.asp?boardid=5&id=97762)

--  作者:du_zb
--  发布时间:2016/5/23 18:04:32
--  [求助]事件触发的程序与原来程序的先后关系
假如有以下程序:
以下内容为程序代码:

1 Sub A()
2     \'语句A1
3     \'语句A2
4     \'...
5     \'语句An
6     \'语句An+1
7     \'...
8     \'语句Az
9 End Sub


其中语句An会引起事件B发生,而事件B发生会触发一系列语句运行:
以下内容为程序代码:

1 Sub 事件B()
2     \'语句B1
3     \'语句B2
4     \'...
5     \'语句Bz
6 End Sub


我的问题是,事件B被语句An触发后语句B1至Bz的运行是以下哪一种情况?
1.在新的线程里面跟语句An+1至Az同时运行
2.在An+1至Az运行完以后再运行
3.B1至Bz马上运行,运行完后An+1至Az再运行

比如说语句An是Order.Buy函数,事件B是Order_OrderStatusEx2事件
[此贴子已经被作者于2016-5-23 18:05:57编辑过]

--  作者:王锋
--  发布时间:2016/5/23 18:39:44
--  

2,A运行完毕后,待柜台有委托回报后触发B


--  作者:du_zb
--  发布时间:2016/5/23 19:08:37
--  
如果委托回报在A运行完毕之前就到达了呢?
--  作者:王锋
--  发布时间:2016/5/23 19:11:45
--  

那也要等到A执行完毕。这是WINDOWS操作系统基于事件处理的机制是一样的,WINDOWS系统本身就是事件驱动机制运行的。

另外你也无须担心A还没运行完毕就能触发事件B,运行A这个函数只需要几纳秒的时间,这么短时间不可能完成从报单到交易回报这个过程的


--  作者:du_zb
--  发布时间:2016/5/23 19:12:31
--  
明白了,谢谢!