+ 1
Multithreading application
can someone share with me a simple application based on multithreading i want just to see how it's and how can benefit of it .
3 Answers
+ 2
I copied the code below from:
https://www.cplusplus.com/reference/thread/thread/
It creates 2 extra threads and waits for each to complete.
You can benefit by getting better performance through use of more CPU cores or by freeing up more execution when some functions block for IO or other resources. I've used multiple threads in a c++ application for rendering fractals in CPU since rendering lots of frames of animation at high resolution and high quality can be time consuming. Running that in 4 threads was almost 4 times faster than 1 thread on a 6-core CPU and could be faster with more threads but I usually didn't go with 6 threads since it used more power to run CPU fans for days on end.
// thread example
#include <iostream> // std::cout
#include <thread> // std::thread
void foo()
{
// do stuff...
std::cout << "foo() called." << std::endl;
}
void bar(int x)
{
// do stuff...
std::cout << "bar() called." << std::endl;
}
int main()
{
std::thread first (foo); // spawn new thread that calls foo()
std::thread second (bar,0); // spawn new thread that calls bar(0)
std::cout << "main, foo and bar now execute concurrently...\n";
// synchronize threads:
first.join(); // pauses until first finishes
second.join(); // pauses until second finishes
std::cout << "foo and bar completed.\n";
return 0;
}
0
Thank you
- 2
532