2.任务包多线程并行计算
1 #include <future>//进程通信,获取未来的结果 2 #include<iostream> 3 #include <thread> 4 #include <string> 5 #include <chrono>//时间 6 #include <mutex>//互斥量 7 using namespace std; 8 9 //创建互斥量 10 mutex m; 11 12 //全局通信变量 13 promise<string> val; 14 15 void main() 16 { 17 //访问外部变量[=] 18 auto fun = [=](int index)->int 19 { 20 //加锁 21 lock_guard<mutex> lckg(m); 22 23 //显示线程id 24 cout << "线程编号:" << this_thread::get_id() << " " << index << endl; 25 //等待十秒 26 this_thread::sleep_for(chrono::seconds(1)); 27 28 //计算 29 return index * 1024; 30 }; 31 32 //获取返回值,创建任务包 33 packaged_task<int(int)> pt1(fun); 34 packaged_task<int(int)> pt2(fun); 35 36 thread t1([&]() 37 { 38 pt1(23); 39 }); 40 thread t2([&]() 41 { 42 pt2(26); 43 }); 44 45 //开启线程,获取结果,只能获取一次 46 int res1 = pt1.get_future().get(); 47 int res2 = pt2.get_future().get(); 48 int last = res1 + res2; 49 cout << last << endl; 50 51 t1.joinable(); 52 t2.joinable(); 53 t1.join(); 54 t2.join(); 55 system("pause"); 56 }
转载于:https://www.cnblogs.com/xiaochi/p/8689058.html
2.任务包多线程并行计算相关推荐
- python doc2 —— MPI多线程并行计算工具mpi4py
MPI多线程并行计算工具mpi4py 1. MPI 2. 基本MPI函数 2.1 工具 a. 通信子(通信空间) b. 获取进程 3. 通信 3.1 点对点通信 3.2 群体通信 a. 广播 bcas ...
- python表情包斗图_Python爬虫入门教程 13-100 斗图啦表情包多线程爬取
斗图啦表情包多线程爬取-写在前面 今天在CSDN博客,发现好多人写爬虫都在爬取一个叫做斗图啦的网站,里面很多表情包,然后瞅了瞅,各种实现方式都有,今天我给你实现一个多线程版本的.关键技术点 aioht ...
- Python爬虫入门教程 13-100 斗图啦表情包多线程爬取
1.准备爬取斗图la写在前面 今天在CSDN博客,发现好多人写爬虫都在爬取一个叫做斗图啦的网站,里面很多表情包,然后瞅了瞅,各种实现方式都有,今天我给你实现一个多线程版本的.关键技术点 aiohttp ...
- R语言使用 multicore 包进行并行计算
R语言是单线程的,如果数据量比较大的情况下最好用并行计算来处理数据,这样会获得运行速度倍数的提升.这里介绍一个基于Unix系统的并行程序包:multicore. 我们用三种不同的方式来进行一个简单的数 ...
- linux 多线程并行计算,Linux下使用POSIX Thread作多核多线程并行计算
POSIX线程库根据处理器.操作系统等特性封装了一台线程处理的接口.对于目前基于x86处理器架构的Linux系统来说,它往往会默认地将新创建的一个线程调度到与主线程不同的核中执行,如果这样能更好地平衡 ...
- java juc包多线程编程案例:Executor入门示例
* 认识Executor*/ package com.zxl.juc.c_026_01_ThreadPool;import java.util.concurrent.Executor;public c ...
- linux 多线程并行计算,浅谈.NET下的多线程和并行计算(五)线程池基础上
池(Pool)是一个很常见的提高性能的方式.比如线程池连接池等,之所以有这些池是因为线程和数据库连接的创建和关闭是一种比较昂贵的行为.对于这种昂贵的资源我们往往会考虑在一个池容器中放置一些资源,在用的 ...
- python线程执行完后释放内存_python变量内存地址释放与加速并行计算多线程
1.导入numba和gc包进行并行计算和内存释放 代码如下很容易的: #coding:utf-8 import time from numba import jit, prange, vectoriz ...
- python 释放线程内存_python变量内存地址释放与加速并行计算多线程
1.导入numba和gc包进行并行计算和内存释放 代码如下很容易的: #coding:utf-8 import time from numba import jit, prange, vectoriz ...
最新文章
- 【Java】阿里巴巴java开发手册总结(我能看懂的)
- 页面加载速度优化的12个建议
- 2017杭州_考驾照笔记
- servlet——登录练习(登录页面登录请求登录请求处理)
- Web前端三剑客之HTML基础
- [数据库] Oracle单表查询总数及百分比和数据横向纵向连接
- win10下的用交叉线实现文件共享
- 安装LabelMe出现ERROR: No matching distribution found for labelme解决方式(关闭网络代理+使用清华源)
- Python PyCrypto,Paramiko模块安装和使用
- 三、运算符、表达式和语句
- python图片压缩算法_Python实现奇异值分解(SVD)压缩图片
- 计算机无法外接投影,电脑连不上投影仪怎么办
- Spring框架介绍
- win10下修改C盘用户文件夹名
- ubuntu安装fcitx五笔拼音输入法_Simplelife_新浪博客
- JAVA版opencv透明,opencv 替换纯色背景为透明背景
- CSS3 transform变形属性、2D变形、3D变形
- 线性回归模型(最小二乘法模型)诊断--R语言
- 各大搜索引擎网站收录提交入口
- ENC28J60学习笔记——第4部分