多執行緒知識

2022-08-05 04:54:10 字數 768 閱讀 8424

同步:多個任務依次按順序執行

非同步:多個任務可以時執行

程序:乙個正在執行的應用程式就是乙個程序,為應用開闢記憶體空間

執行緒:乙個程序可以有多個執行緒,是程序的基本執行單元,執行應用的**/任務

nsthread:

建立執行緒

方法一:物件方法

nsthread *thread = [[nsthread alloc]initwithtarget:self selector:@selector(demo:) object:@"mm"];

[thread start];

方法二:類方法

[nsthread detachnewthreadselector:@selector(demo:) totarget:self withobject:@"mm"];

方法三[self performselectorinbackground:@selector(demo:) withobject:@"mm"];

-(void)demo:(nsstring *)strelseelse{

nslog(@"結束");

break;

會出現資源混亂:解決方法(互斥鎖:使用的技術就是執行緒同步技術)能夠有效防止多執行緒搶奪資源造成的資料安全問題

執行緒同步:多執行緒按順序的執行任務;

互斥鎖:@synchronized(1.必須繼承與nsobject 2.必須是全域性變數《一般設為self>) {

要執行**;

注意:加鎖後執行緒的執行效率會比不加鎖低,但保證了同時操作全域性變數的安全性

多執行緒 相關知識

多執行緒 目標程序 執行緒程序 對應的就是計算機中執行的應用程式 process p new process p.startinfo.filename notepad.exe p.start 通過例項物件來開啟記事本 process ps process.getprocesses foreach p...

多執行緒知識學習

我們現在寫乙個買票的多執行緒。例子 public class sellticket implements runnable catch interruptedexception e system.out.println thread.currentthread getname 正在銷售第 ticke...

多執行緒 二 使用多執行緒的準備知識

一 為什麼要使用多執行緒?使計算機所有資源在執行任務的時候能夠全部利用上,以提公升計算機資源利用率的方式來提公升系統執行效率 cpu的單核執行速度由於硬體技術問題已經遇到瓶頸,而概念性的 光腦 貌似離我們還很遙遠,現在的計算機效能提公升方向是向多核發展。多核同時工作,協同完成任務。大家熟知的神威 太...