基礎知識記錄
1、ThreadPool與Task?
執行緒池的優點:① 降低資源消耗。通過重複利用已建立的執行緒降低執行緒建立和銷燬造成的消耗。
② 提高響應速度。當任務到達時,任務可以不需要等到執行緒建立就能立即執行。
③ 提高執行緒的可管理性。執行緒是稀缺資源,如果無限制的建立,不僅會消耗系統資源,還會降低系統的穩定性,使用執行緒池可以進行統一分配。
但是執行緒池不支援執行緒的取消、完成、失敗通知等互動性操作,不支援執行緒執行的先後順序。為了彌補實現上述功能所作的額外工作,微軟線上程池的基礎上進行了優化,提出了Task。
2、Task的啟動方式?
① var task = Task.Run(()=>{});
② var task = new Task(); task.Start();
③ CancellationTokenSource cts = new CancellationTokenSource();
TaskFactory taskFactory = new TaskFactory();
Task[] tasks = new Task[]{ taskFactory.StartNew(()=>Add(cts.Token)) };
taskFactory.ContinueWhenAll(tasks, TasksEnded, CancellationToken.None);
3、什麼是委託?委託的寫法有哪些?
委託:將方法當作另一個方法的引數傳遞。
委託的寫法:① delegate
② Action<T>與Func<T>
4、有哪些IOC框架?https://www.cnblogs.com/lhxsoft/p/8609013.html
Autofac/Unity/Castle Windsor/Spring.NET/StructureMap/Ninject/微軟自帶的DI
5、有哪些基於redis的擴充套件?https://www.php.cn/redis/422232.html
Jedis/Lettuce/Redisson
6、ABP