Page 28 -
P. 28

{
                         if ((number % i) = = 0)
                             return false;
                     }
                     return true;
                 }

                 void PrintNumbers(const vector<int>& primes)
                 {
                     for (int v : primes)
                     {
                         cout << v << endl;
                     }
                 }

                 int main()
                 {
                     // 각 스레드는 여기서 값을 꺼내 온다.
                     int num = 1;

                     vector<int> primes;

                     auto t0 = chrono::system_clock::now();


                     // 작동할 워커 스레드
                     vector<shared_ptr<thread> > threads;


                     for (int i = 0; i < ThreadCount; i++)
                     {
                         shared_ptr<thread> thread(new thread([&]() {
                             // 각 스레드의 메인 함수
                             // 값을 가져올 수 있으면 루프를 돈다.
                             while (true)
                             {
                                 int n;
                                 n = num;
                                 num++;

                                 if (n >= MaxCount)
                                     break;

                                 if (IsPrimeNumber(n))
                                 {


         036
   23   24   25   26   27   28   29   30   31   32   33