effizientes multithreading
-
Hi,
ich moechte folgendes beispiel programmieren:
http://www.careercup.com/question?id=278718single threading laueft soweit.
wie kann ich nun das multithreading effizient realisieren? ein thread pool implementieren?-bjarne
-
die frage ist:
- wie viele bytes soll jeder thread lesen?
- wie viele threads soll ich erzeugen? (vermutlich mit einem benchmark zu bestimmen...)std::vector<std::vector<BYTE>> stream_buffer_vec; unsigned int total_bytes; do { std::cin.read(reinterpret_cast<char*>(&stream_buffer_vec[thread_id][0]), stream_buffer_size); total_read = std::cin.gcount(); // create crypto worker thread: pass the following to the worker thread: // - stream_buffer_vec[thread_id] // - copy of the current key // rotate key } while (total_read > 0);// if worker thread is finished call:
// std::copy(stream_buffer.begin(), stream_buffer.end(), std::ostream_iterator<char>(std::cout));--bjarne
-
hi, kann jemand feedback geben?
-
Was willst du hören? Probiere es aus.
Sinnvoll ist das sowieso nicht, selbst eine SSD wird hier der Flaschenhals sein, nicht die CPU.