黑马程序员技术交流社区
标题:
线程中同步和异步的区别
[打印本页]
作者:
夕阳123
时间:
2014-3-29 17:46
标题:
线程中同步和异步的区别
多线程中同步和异步和哪些不同,怎么使用它们呢?
作者:
H-Deka
时间:
2014-3-29 17:49
如果数据将在线程间共享。比如正在写的数据以后可能被另一个线程读到,或者正在读的数据
可能已经被另一个线程写过了,那么这些数据就是共享数据,必须进行同步存取。
当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法
的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。
作者:
你好!默默
时间:
2014-3-29 18:50
我觉得你问你问题很好,可能两者都差不多,不过从字面上看,异步是对当前的调用者来说,调用的时候自己的程序在运行,异步的程序也同时在运行;多线程好像更偏于从第三方来看,比如两个者多个线程同时处理一个资源,或者同时处理各自的事情,但是多个线程之间的CPU争用可能要自己来写,比如用sleep();而异步是不用管这个的,你可以过一定的时间来查看异步的程序有没有完成或者让它调用一个事件来通知当前的程序它完成了,比如用在程序中查看IsCompleted来确定异步的调用是不是完成.我觉得用哪一种可能不重要,当你觉得用其中一个更合适的时候就选择一个就是了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2