Wenxun 发表于 2015-1-18 12:47:56

Winhttp对象同步与异步的区别

Winhttp对象同步与异步的区别


winhttp.winhttprequest.5.1中,同步和异步方式的异同;

具体的在源码中已经有了注释,这里只是多写一点来让帖子显得高大上
同步和异步的设置是在“Open”方法中,
对象.方法 ("Open",Method,Url,Async),最后一个参数真为异步,假为同步。




同步模式异步模式
同步方法最显而易见的就是会阻塞线程,(卡界面的根源)。异步方法不会阻塞线程,所以也就不会卡界面。
对于超时,同步中支持4中超时,分别是DNS解析,Connect(连接),Send发送,和接受,4种可以分别设置超时①只有一种超时,那就是等待,如果在设置的时间内没有数据,那么就是超时。
~异步最重要的是支持“CallBack”或者说是“Event” ,但是很可惜,易语言的对象不支持这个。②


注释:①
对于超时的一点个人理解


' 我的个人理解是,如果连接的时候花费了2秒,然后发送数据的时候又花了1秒,然后5秒没有接收数据,那么这样加起来有8秒钟。
' 仅仅是个人理解,欢迎批评指

②,其实应该是可以实现的,但是方法特别繁琐. 过些时候我会写一个winhttpAPI的例程来演示异步的回调(CallBack)调用.

win765 发表于 2015-1-19 02:13:54

我也顶起出售广告位

ghost_z 发表于 2015-2-15 06:54:27

啥玩应呀

uvgmn 发表于 2015-3-8 19:29:15

纯粹路过,没任何兴趣,仅仅是看在老用户份上回复一下

马上二楼 发表于 2015-5-24 19:02:44

。。。。。。。。。

微笑背后的忧伤 发表于 2015-5-25 07:41:06

支持楼主,绝对顶你...谢谢!

Malimali 发表于 2015-6-6 14:12:26

看帖是一种习惯,不过我回帖也是一种习惯 更是一种美德

神马都是白日梦 发表于 2015-6-28 14:12:59

路过,看见,支持一下!

Malimali 发表于 2015-7-13 18:52:13

我只是路过,不发表观点

sw169 发表于 2017-4-21 11:32:07

以前看帖从不回帖,后来发现, 这样不但会用掉我的海币, 而且还不厚道。
页: [1]
查看完整版本: Winhttp对象同步与异步的区别