Java 在改型2中,同步请求和异步请求之间哪个更好

Java 在改型2中,同步请求和异步请求之间哪个更好,java,android,multithreading,retrofit,Java,Android,Multithreading,Retrofit,我使用了这两种方法,但仍然可以,但当使用同步方法时,我们必须创建新线程以避免android.os.NetworkOnMainThreadException。那么两者之间哪一个更好呢。使用同步方法,我们可以直接返回响应值,并将其多次用于调用.execute().body如果您已经在后台线程上(例如,IntentService),并且需要使用改型,请使用同步方法 如果您在主应用程序线程上,并且需要使用改型,并且没有其他需要管理自己的后台线程来完成此工作,请使用异步方法。如果您已经在后台线程上(例如,

我使用了这两种方法,但仍然可以,但当使用同步方法时,我们必须创建新线程以避免
android.os.NetworkOnMainThreadException
。那么两者之间哪一个更好呢。使用同步方法,我们可以直接返回响应值,并将其多次用于
调用.execute().body

如果您已经在后台线程上(例如,
IntentService
),并且需要使用改型,请使用同步方法


如果您在主应用程序线程上,并且需要使用改型,并且没有其他需要管理自己的后台线程来完成此工作,请使用异步方法。

如果您已经在后台线程上(例如,
IntentService
),并且需要使用改型,请使用同步方法


如果您在主应用程序线程上,并且需要使用改型,并且没有其他需要管理自己的后台线程来完成此工作,请使用异步方法。

没有正确的答案。这取决于你的需要。通常为了让UI线程空闲,您应该异步调用WS,但是如果您的调用已经在线程中(出于某种原因),您可能可以使用同步调用。如果我们创建新线程来处理同步方法。这会影响到我们的其他线程或主线程吗?如果您的呼叫是从工作线程同步调用的,则只有工作线程会一直忙,直到呼叫返回。没有正确的答案。这取决于你的需要。通常为了让UI线程空闲,您应该异步调用WS,但是如果您的调用已经在线程中(出于某种原因),您可能可以使用同步调用。如果我们创建新线程来处理同步方法。它会影响到我们的其他线程或主线程吗?如果您的调用是从工作线程同步调用的,则只有工作线程会忙,直到调用返回。