[英]What is the difference between calling a asynchronous web service asynchronously and a synchronous webservice asynchronously?
在異步模式下調用異步Web服務與在異步模式下調用同步Web服務之間的區別是什么。 我知道我們可以為sycn web-service創建異步客戶端。
同步和異步Web服務的wsdl之間是否有任何區別?
Web服務是否可以描述為同步或異步取決於其API以及其wsdl描述。
byte[] GetImage()
是一個同步Web服務,而
String StartImageDownload()
bool IsComplete(String token)
byte[] ReadData(String token)
描述了一個異步接口。
無論接口的細節如何,您的代碼中的API調用都可以是同步的或異步的。 實際的Web服務調用是相同的,它只是您的代碼與網絡層交互的方式不同。 在同步調用中,調用線程將阻塞,直到數據返回(或發生錯誤)。 在異步調用中,通過回調函數通知您完成。 實際的機制可能會有所不同,但它可能看起來像:
ws.BeginGetImage(()=>{
// this is invoked when the result has arrived
byte[] data = ws.EndGetImage();
});
// execution arrives here before the data does - the previous call doesn't block
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.