编程范式 17 笔记 并行化
来源:互联网 发布:淘宝3c认证可以租吗 编辑:程序博客网 时间:2024/06/07 02:25
哲学家吃饭
Samphore fork[]={1,1,1,1,1};Samphore numAllToEat(2);void Philosepher(int id){ for(int i=0;i<3;i++){ Think(); sw(numAllToEat); sw(forks[id]) sw(forks[(id+1)%5]); Eat(); ss(forks[id]); ss(forks[(id+1)%5]); } Think();}
FTP
int DownloadSingleFile(const char* server,const char* path){}int DownloadAllFiles(const char* server,const char* files[],int n)//主线程产生很多子线程{ int totalBytes=0; Semaphore lock=1; for(int i=0;i<n;i++) { ThreadNew(,DownloadHelper,4,server,files[i],&totalBytes,lock); } //等所有工作都完成才return return totalBytes;}void DH(const char * server,const char * path, int *numBytesp, semaphore lock){ int bytesDownloaded=DownloadSingleFile(server,path); sw(lock); (*numBytesp)+=bytesDownloaded; ss(lock);}
监视每个子线程
知道它们是否任务完成
int DownloadSingleFile(const char* server,const char* path){}int DownloadAllFiles(const char* server,const char* files[],int n)//主线程产生很多子线程{ Semaphore childrenDone=0; int totalBytes=0; Semaphore lock=1; for(int i=0;i<n;i++) { ThreadNew(,DownloadHelper,5,server,files[i],&totalBytes,lock,CD); } //等所有工作都完成才return for(int i=0;i<n;i++) sw(childrenDone); return totalBytes;}void DH(const char * server,const char * path, int *numBytesp, semaphore lock,semaphore parentToSignal){ int bytesDownloaded=DownloadSingleFile(server,path); sw(lock); (*numBytesp)+=bytesDownloaded; ss(lock); ss(parentToSignal);}
阅读全文
0 0
- 编程范式 17 笔记 并行化
- 编程范式15 笔记 并行化
- 编程范式学习笔记
- 《编程范式》学习笔记
- 编程范式2 笔记
- 编程范式11 笔记
- 编程范式13 笔记
- 编程范式14 笔记
- 编程范式23 笔记
- Programming Paradigms 编程范式-笔记
- 编程范式5 笔记 泛型
- 编程范式七 笔记 泛型栈
- 编程范式16 笔记 信号量
- gpu并行编程简略笔记
- 编程范式随课笔记(一)
- 编程范式随课笔记(二)
- 编程范式3 笔记 struct 内存模型
- 编程范式8 笔记 C/C++内存
- 解决64位系统IIS网站发布出现未能加载文件或程序集“...”或它的某一个依赖项。试图加载
- 858D Polycarp's phone book 字典树
- uva 10972 添加几条变使得无向图为双联通分量
- eclipse 编写mapreduce程序(wordCount)
- 2^N-2的N次方
- 编程范式 17 笔记 并行化
- django-apps下面有多个app以及增加搜索路径
- 欢迎使用CSDN-markdown编辑器
- 加载等待特效框架 MBProgressHUD
- jquery eval()解析JSON,ajax通过return返回数据,js读取解析JSON数据
- LoRa学习:LoRa关键参数(扩频因子,编码率,带宽)的设定及解释
- Android8.0中CTS测试对于TEE的要求
- 和小白一起学ABAP – 9 SAP程序设计之 系统开发语言
- 欢迎使用CSDN-markdown编辑器