在Android中调用AsyncTask.execute(新的Runnable ..与扩展AsyncTask和调用doInBackground(..)之间有什么区别/优势?
在某个时间间隔内,我将使用HttpURLConnection POST到服务器并检索信息。我不确定哪种方法是处理此类操作的首选方法。
答案 0 :(得分:0)
扩展AsyncTask的类可以有一个带参数的构造函数,然后您可以在该类中使用此值。这样,您的AsyncTask可以具有不同类型的不同参数。我没有看到任何其他优势。
我更喜欢使用ThreadPoolExecutor而不是AsyncTask来提高developer.android.com的性能:
线程池解决了两个不同的问题:由于减少了每个任务的调用开销,它们通常在执行大量异步任务时提供更高的性能,并且它们提供了一种绑定和管理资源(包括执行时消耗的线程)的方法一系列任务。每个ThreadPoolExecutor还维护一些基本统计信息,例如已完成任务的数量。
但是,对于API连接,我更喜欢使用retrofit,请尝试一下。