关于异步编程的问题请教

在学习异步编程时,想到一个问题,假如我使用BeginInvoke调用了一个方法,这个方法很耗时,或者是线程池满员,它一直在队列中待着了,我等不了它的结果了。有这样的方法吗,设置个时间,比如超过1分钟我就不再等了。

还有一个问题是被异步调用了,方法在线程池里肯定会执行是吧,除非这个线程出了点什么事,当像出现我前面的那种超时不想等了的情况,可能过几分钟轮到它了,还是会执行,没法取消。


月关宝盒
浏览 556回答 1
1回答

慕田峪7331174

我们来分析一下 按照你的思路 首先 我们不用异步线程是吧,我们只能用单一线程咯,这样的话 单线程就是一条单人行道 假设我们有楼主这样的方法 一 我们要有一个侦测器 检测 服务开启的动作 二 服务 执行 开启的动作 这样的话 和单线程 只能执行一个动作 矛盾 我认为 这个方法是没有的 服务的开启中 经常 碰到楼主 面临的问题 在服务设计中 ,开启的过程是直接赋予异步线程中的 我的理解 服务的开启触发 仅仅是通知某个服务 开始服务啦 具体 准备服务的时间 有多 对于服务管理器是不需要关注的
打开App,查看更多内容
随时随地看视频慕课网APP