线程结束后调用其他函数

     private static void Main(string[] args){//通过回调, 检测线程结束Func<int, string, int> a = Test;//倒数第二个参数为会调函数,线程结束后会调用此函数,最后个参数可以传递给回调函数数据a.BeginInvoke(100, "maning", OnCallBack, a);Console.ReadKey();}private static void OnCallBack(IAsyncResult ar){Func<int, string, int> b = ar.AsyncState as Func<int, string, int>;int res = b.EndInvoke(ar);Console.WriteLine("子线程结束" + " 回调中取得参数" + res);}private static int Test(int i, string name){Console.WriteLine("Test" + i + " " + name);//当前线程暂停100msThread.Sleep(100);return 100;}OnCallBack方法的参数是固定的,(IAsyncResult ar)

ar.AsyncState传递过来的数据,也就是main方法中的 Func<int, string, int> a

转载于:https://www.cnblogs.com/Vincente/p/6912889.html

2.异步回调检测线程结束相关推荐

  1. 异步同步、阻塞非阻塞、异步回调、线程队列和协程

    今天学习了异步同步.阻塞非阻塞.异步回调.线程队列和协程 一.异步同步和阻塞非阻塞 线程的三种状态: 1.就绪 2.运行 3.阻塞 阻塞:遇到了IO操作  代码卡住  无法执行下一行  CPU会切换到 ...

  2. 升级springboot导致的业务异步回调积压问题定位

    1. 起因 A与B云侧模块特性联调的过程中,端侧发现云侧返回有延迟的情况. 7月19日与A模块一起抓包初步判断,B业务有积压的情况. 7月18日已经转侧B业务现网版本,由于使用一套逻辑.故可能存在请求 ...

  3. java线程callback,Java线程之异步回调(Callback)

    ●介绍 有时候执行一个任务需要很长时间,单线程下线程会处于阻塞状态.这个时候我们会考虑一种非阻塞的处理模式.非阻塞任务在任何编程语言里都必不可少,Java也不例外.多线程就是一个很好的解决办法. 但是 ...

  4. 并发编程之进程池,线程池 和 异步回调,协程

    1.进程池和线程池 2.异步回调 3.协程 4.基于TCP使用多线程实现高并发 一.进程池和线程池 什么是进程池和线程池: ''' 池 Pool 指的是一个容器 线程池就是用来存储线程对象的 容器创建 ...

  5. .NET 线程 Thread 进程 Process、线程池 pool、Invoke、begininvoke、异步回调、APM、EAP、TPL、aysnc、await

    windows系统是一个多线程的操作系统.一个程序至少有一个进程,一个进程至少有一个线程.进程是线程的容器,一个C#客户端程序开始于一个单独的线程,CLR(公共语言运行库)为该进程创建了一个线程,该线 ...

  6. twisted应用中异步回调的方式及线程的应用

    前言: 学习了golang的goruntine后,再回过头来看twisted网络编程库中的异步应用,没事琢磨下,以前搞过一个twisted做负载分发,性能差的要命,这几天再搞搞,看看能不能做少许提升. ...

  7. android 异步回调中操作UI线程,UI同步、卡死阻塞等性能问题

    android开发中,回调无处不在,整个android开发的框架就是以回调机制建立起来的.如:activity,service,broadcast,fragment,view事件监听,baseadap ...

  8. 第一节:复习委托,并且通过委托的异步调用开启一个新线程和异步回调、异步等待。

    一. 再谈委托 1. 委托是一个关键字为delegate的自定义类型,通过委托可以把方法以参数的形式传递给另外一个方法,实现插件式的开发模式: 同时调用委托的时候,委托所包含的所有方法都会被实现. 2 ...

  9. 第一节:复习委托,并且通过委托的异步调用开启一个新线程和异步回调、异步等待

    一. 再谈委托 1. 委托是一个关键字为delegate的自定义类型,通过委托可以把方法以参数的形式传递给另外一个方法,实现插件式的开发模式: 同时调用委托的时候,委托所包含的所有方法都会被实现. 2 ...

最新文章

  1. GO语言实现文件的断点续传
  2. py2exe打包OpenCV,找不到libiomp5md.dll
  3. 写出TREE-PREDECESSOR的伪代码(算法导论第三版12.2-3)
  4. 基于matlab的数字下变频器的设计与仿真应用,基于MATLAB的数字下变频器的没汁与仿真应用...
  5. 程序员面试金典 - 面试题 01.02. 判定是否互为字符重排(哈希map)
  6. python-数字数据类型-整数类型-浮点数类型-数据类型间的转换
  7. java打印计算机_在Java程序中实现高精度打印
  8. 数组对象 按某个属性排序
  9. 通过C语言编程一个小游戏(乐趣无边)
  10. 地理探测器GeoDetector
  11. int类型转换byte类型
  12. Java学习之基础知识2
  13. 自己动手实现@Autowired注解
  14. 无线鼠标计算机不识别,教你笔记本电脑检测不到无线鼠标如何解决
  15. html5文字游戏制作工具,橙光文字游戏制作工具
  16. 09年河南高考零分作文:兔子,你就是一个傻B
  17. DRAM(动态随机储存器)的内部工作原理简述
  18. python 标准输入设备_实时获取MIDI设备的输入(Python)
  19. ui设计培训课程是哪些
  20. ADI-SigmaDSP开发入门

热门文章

  1. Android进程使用Messenger通信
  2. 你应该知道的那些Android小经验
  3. mach-o格式分析
  4. 适合打游戏的计算机内存品牌型号,玩游戏电脑内存要多大合适?不同内存容量玩游戏区别实测...
  5. centos安装llvm_CentOS 7.0 编译安装LLVM7.0.0版本
  6. android context继承关系,android中Context深入详解
  7. windows系统禁止更改服务启动类型_Win10系统关闭自动更新方法
  8. 科研人员必须知道的SCI知识
  9. 元胞自动机(Cellular Automata)
  10. 教你保存在线视频文件