计算机概念:
进程:是一个程序在电脑上运行,占据的全部计算资源,整体称之为进程。
线城:是程序执行的最小单位,任何一个响应都是线程完成的,线程也是计算资源的整体
多线程:一个程序运行时,能有多个线程同时响应
4核8线程----计算机速度特别快,分时间片
多线程---.net java netcore
单线程多进程 ---nodes js redis
Thread是.NetFramework对计算机线程的一个封装
多线程是操作系统提供的资源
同步:发起调用,等着返回,然后继续下一行;
异步:发起调用,不等着返回,直接继续下一行;
委托的异步调用:
1 同步方法卡界面,主线程被占用,无法响应别的操作,所以卡界面,异步多线程不卡界面,点个按钮还能干别的
2同步方法慢,只有一个线程工作,串行的
已不多线程方法快,多个线程并发执行
但是并不是线性增长的,因为:
多线程是资源换时间,资源可能有限,线程调度损耗。
追去速度,就可以用多线程
线程不是越多越好,资源有限/调度损耗,其实效率更低
一个数据库查询特别耗时间,难呢过不能多线程解决一下? 不可以,没用!
如果你是多个查询,加起来耗时间,我们可以多线程并发,同时查询多个可以独立运行的任务,可以并发,才能提升性能!!
3 异步多线程的无序性
启动无需;线程是操作系统的,决定于操作系统的调度策略,无法掌握执行时间不确定;同一个线程执行相同的任务,时间也是不同的,结束顺序也不确定。