同步调用和异步调用WebService

2019-12-26 13:28:50于海丽

本文给大家介绍webservice同步调用和异步调用,同步调用就是一个同步操作会阻塞整个当前的进程,直到这个操作完成才能执行下一段代码,异步调用不会阻塞启动操作的调用线程,调用程序必须通过轮流检测,或者等待完成信号来发现调用的完成。小伙伴们跟着小编一起学习

异步,说到异步需要首先将以下同步。同步就是代码按照顺序执行,当前面的代码的请求没有正常返回结果的情况下,后面的代码是不能运行。而异步正好和这点不同,异步是代码运行后,不管当前的请求是否返回结果,后面的代码都会继续运行。

一:同步调用

同步调用和异步调用WebService

一个同步操作会阻塞整个当前的进程,直到这个操作完成才能执行下一段代码

二:异步调用

同步调用和异步调用WebService

不会阻塞启动操作的调用线程,调用程序必须通过轮流检测,或者等待完成信号来发现调用的完成

三:同步调用WebService

同步调用WebService就是我们平常的调用的写法

1:AsynCall.asmx的AsynCall.cs代码

 

 
  1. /// <summary>  /// 根据学生姓名得到该学生的成绩 
  2. /// </summary>  /// <param name="strName">学生姓名</param> 
  3. /// <param name="intDelaySecond">延迟的秒数</param>  /// <returns>成绩</returns> 
  4. [WebMethod]  public int GetGrade(string strName, int intDelaySecond) 
  5. {  if (intDelaySecond > ) 
  6. {  Thread.Sleep(intDelaySecond * ); 
  7. }  int intGrade = ; 
  8. switch (strName)  { 
  9. case "张三":  intGrade = ; 
  10. break;  case "李四": 
  11. intGrade = ;  break; 
  12. case "王五":  intGrade = ; 
  13. break;  case "贾六": 
  14. intGrade = ;  break;