取消Asynctask进行TCP / UDP调用

时间:2014-10-15 00:58:28

标签: android sockets tcp android-asynctask udp

这些问题涉及同一问题,但没有具体答案。

我的问题是:

  • 我有一个AsyncTask,它每10秒运行一次并监听来自UDP套接字的响应。(使用计时器任务来实现重复的调用)。
  • 此响应可能不可用,我想在3秒后取消/超时此异步任务。不确定如何?

目前Asynctasks每隔10秒创建一次,似乎等待,并且使用其他异步任务不能从应用程序中做出任何其他请求。

在此之后尝试了.cancel(true);,但onCancelled()onCancelled(String result)没有被调用(我负责计时器),并且每10秒后仍然会发出请求

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

对我有用的是,不是将Async任务聚焦到超时,而是应该专注于套接字连接到超时。我现在已经通过使用socket.setSoTimeout(10000)设置套接字超时时间来实现这一点,这似乎正在起作用。