-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.cpp
More file actions
38 lines (28 loc) · 1.04 KB
/
main.cpp
File metadata and controls
38 lines (28 loc) · 1.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <thread>
#include "NumberSorter.h"
int main () {
// Insantiates NumberSorter Object
NumberSorter sorter;
// Thread to read nymbers from the user-provided file concurrently
std::string fileName = "IntegerNumbersToBeSorted.txt";
std::thread readerThread([&sorter, &fileName]() {
sorter.readNumbersFromFile(fileName);
});
// Sets number of numbers to be generated and number max threshold
int additionalGeneratedNumbers = 200;
int generatedNumbersMaxValue = 3000;
// Creates thread to generate files concurrently
std::thread generatorThread([&sorter, additionalGeneratedNumbers, generatedNumbersMaxValue]() {
sorter.generateNumbers(additionalGeneratedNumbers, generatedNumbersMaxValue);
});
// Waits all thhreads to finish
readerThread.join();
generatorThread.join();
// Sort numbers
sorter.sortNumbers();
// Show numbers read from the file
sorter.showNumbersFromFile();
// Shows the sorted numbers
sorter.showSortedNumbers();
return 0;
}