随笔分类 -  线程

Async/awit详解(一)
摘要:await/async 概念 await/async 是C#保留关键字,通常是成对出现 async修饰方法,可以单独出现,但是有警告 await在方法体,只能出现在task/async方法前面,只有await会报错 一个async方法,如果没有返回值,可以方法声明返回Task await/async 阅读全文

posted @ 2023-06-08 02:37 唐什么来着 阅读(527) 评论(0) 推荐(0) 编辑

线程安全以及锁
摘要:在CS架构中项目中,线程的使用就成了无可避免的。在使用线程时,线程安全如何处理,以及如何避免死锁?要解决这些问题,那么我们需要了解,什么是线程安全,什么是死锁? 什么是线程安全? 线程安全问题其实是指多个线程对于某个共享资源的访问导致的原子性、可见性和有序性问的问题,而这些问题会导致共享数据存在一个 阅读全文

posted @ 2022-06-01 06:48 唐什么来着 阅读(135) 评论(0) 推荐(0) 编辑

异步多线程(六)lock锁
摘要:非线程安全 引发线程安全的原因是,多个线程可以同时操作全局变量/共享变量/静态变量/磁盘文件/数据库的值就可能存在线程安全问题,因为多个线程操作,出现了覆盖。List集合也是非线程安全的。 线程安全 多线程同时运行,如果每次运行的结果和单线程运行的结果一致,那么就是线程安全的。 Lock锁 概念 解 阅读全文

posted @ 2019-06-12 16:30 唐什么来着 阅读(1201) 评论(0) 推荐(0) 编辑

异步多线程(五)多线程异常处理
摘要:多线程异常处理 概念 多线程里面抛出的异常,会终结当前线程;但是不会影响别的线程;在工作中一般情况下,不仅需要捕获到异常信息,还可能需要 去通知其他线程,这就涉及到另外一个概念线程取消 工作中常规建议:多线程的委托里面不允许异常,包一层try-catch,然后记录下来异常信息,完成需要的操作。 模拟 阅读全文

posted @ 2019-06-12 16:17 唐什么来着 阅读(2509) 评论(0) 推荐(0) 编辑

异步多线程(四)Task
摘要:Task 概念: Task线程是基于线程池的,提供了丰富的API Task的启动方式 第一种: Task task = new Task(() => this.DoSomethingLong("btnTask_Click_1")); task.Start(); 第二种: Task task = Ta 阅读全文

posted @ 2019-06-09 01:53 唐什么来着 阅读(411) 评论(0) 推荐(0) 编辑

异步多线程(三)ThreadPool
摘要:概念 线程池诞生的原因: Thread 过于强大,无法管控线程数量。 如果某个对象创建和销毁代价比较高,同时这个对象还可以反复使用的,就需要一个池子 保存多个这样的对象,需要用的时候从池子里面获取;用完之后不用销毁,放回池子;(享元模式) 节约资源提升性能;此外,还能管控总数量,防止滥用; 线程池启 阅读全文

posted @ 2019-06-08 21:38 唐什么来着 阅读(315) 评论(0) 推荐(0) 编辑

异步多线程(二)Thread
摘要:Theread 概念 C#对线程对象的一个封装(密封类)类库 Thread实例化及调用 第一种: 只是简单的把需要线程执行的方法传递到Thread Thread thread = new Thread(testMethod);//实例化Thread thread.Start();//开启线程,执行方 阅读全文

posted @ 2019-06-07 01:53 唐什么来着 阅读(468) 评论(0) 推荐(0) 编辑

异步多线程(一)委托异步多线程
摘要:进程 计算机概念,程序在服务器运行时占据全部计算机资源总和,虚拟的。包含CPU、内存、网络、硬盘 MSDN: 当一个程序开始运行时,它就是一个进程,进程包括运行中的程序和程序所使用到的内存和系统资源。 而一个进程又是由多个线程所组成的。 线程 计算机概念,进程在响应操作时最小单位,也包含CPU、内存 阅读全文

posted @ 2019-06-05 23:16 唐什么来着 阅读(1038) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示