多執行緒練習2

2021-07-23 17:11:49 字數 775 閱讀 7583

多執行緒練習:

兩個執行緒一起列印數從1到9,執行緒1列印所有不是3的倍數的數,執行緒2列印3的倍數。

1.用互斥鎖+條件變數的方法

2.用訊號量的方法(**中sleep的位置比較重要)

1.用互斥鎖+條件變數的方法的**

#include #include #include pthread_mutex_t mutex = pthread_mutex_initializer;/*初始化互斥鎖*/

pthread_cond_t cond = pthread_cond_initializer;/*初始化條件變數*/

void *thread1(void *);

void *thread2(void *);

int i=1;

int main(void)

void *thread1(void *arg)

}void *thread2(void *arg)

}

訊號量實現的原始碼:

#include #include #include void *thread1(void *);

void *thread2(void *);

sem_t s[2];

int i=1;

int main(void)

void *thread1(void *arg)

else }

}void *thread2(void *arg)

}

多執行緒練習

1 請在指定位置插入 實現列印輸出1 99。package com.company.deno class demo public void method 結束位置 thread t new thread a t.start 2 檢查 並修改 class test implements runnabl...

多執行緒練習

問題 以下四個程式doother方法的執行需不需要等待dosome方法的結束?程式1 public class exam01 catch interruptedexception e t2.start class mythread extends thread override public voi...

多執行緒模擬練習

package pxyhomeworkday11 第二題 分析以下需求,並用 實現 有100份禮品,兩人 小剛和小明 同時傳送,當剩下的禮品小於10份的時候則不再送出,利用多執行緒模擬該過程並將執行緒的名稱列印出來.列印格式 小剛送出了禮物,還剩99份禮物。小剛送出了禮物,還剩98份禮物。小明送出了...