相关疑难解决方法(0)

C++中线程的简单示例

有人可以发布一个在C++中启动两个(面向对象)线程的简单示例.

我正在寻找实际的C++线程对象,我可以扩展运行方法(或类似的东西),而不是调用C风格的线程库.

更新 - 我遗漏了任何特定于操作系统的请求,希望无论谁回复都会回复使用跨平台库.我现在只是明白了.

c++ multithreading

391
推荐指数
7
解决办法
66万
查看次数

MATLAB:多线程和多核之间的区别

我有一个i7-M620处理器,每个核心有2个物理内核和2个线程(多线程CPU)(总共4个线程).当我使用MATLAB Parallel Computing Toolbox时,我只能打开2个池而不是4个.这是代码:

matlabpool(2)
parfor i = 1:20
    Test(i) = i^2;
end
matlabpool close
Run Code Online (Sandbox Code Playgroud)
  • 有人能解释为什么吗?
  • 我在这里做多线程或多核计算吗?
  • 可以用MATLAB做到这两点吗?

matlab multithreading

3
推荐指数
1
解决办法
7634
查看次数

多线程在速度上没有任何改进 - 在C中使用pthread - 为什么?

为了在多线程中变得更加舒适,我编写了一个带有"密集"计算的小程序.它是mandelbrot集的图片,其中每个像素单独计算,然后像素缓冲到行.每个线程获得的总行数相等.因此,例如,如果选择的线程数是2,则具有1000行高度计算的图片应该以两个500行包结束.因此我建议速度种类减少两倍,但没有改善.为什么???我不明白,因为一切正常并且看似合乎逻辑.如果有人能给我一个提示,我将非常感激.下面你会看到main和一个由main调用的mandelbrot集的caluclation函数.

int main(int argc, char ** argv, char ** envp) {

if(argc != 4)
{
printf("Bitte genau 3 Argumente eingeben.\n");
 return 1;
}
//Structs und Variablen für die Stopuhr
struct timeval start, ende;
long ttlende, ttlstart;

width  = str2num(argv[1]);
height = str2num(argv[2]);

int y;
//char blueGreenRed[3];
//Ist Buffer für ganze Zeile: Breite * 3 wegen den 3 Bytes pro Pixel
//char zeile[width*3];

unsigned char info[BMPHEADER_SIZE] = {
              //size
    'B','M',  0,0,0,0, 0,0, 0,0, 54,0,0,0,
              //width  //height
    40,0,0,0, 0,0,0,0, 0,0,0,0,  1,0, 24,0, …
Run Code Online (Sandbox Code Playgroud)

c multithreading pthreads performance-testing

0
推荐指数
1
解决办法
430
查看次数

多线程可以在多核处理器中并行运行吗

在多线程环境中,

Single core processor
Run Code Online (Sandbox Code Playgroud)

当两个线程在单个核心处理器中执行时,两个线程将同时执行。

Multi-core(Dual core) processor
Run Code Online (Sandbox Code Playgroud)

当两个线程在多核处理器中执行时,这两个线程将并行执行。我的理解正确吗?

java multithreading

-3
推荐指数
1
解决办法
263
查看次数

标签 统计

multithreading ×4

c ×1

c++ ×1

java ×1

matlab ×1

performance-testing ×1

pthreads ×1