Я пишу многопоточную программу C ++, где каждый поток генерирует случайное число и записывает ее в отдельный файл .txt . Основная функция выглядит так: < /p>
void run(unsigned long job_index) {
// Generate a random number
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_real_distribution dist(-1.0, 1.0);
double value = dist(gen);
// Call a helper function that reads from shared data via reference
const auto& data = get_shared_data(); // Read-only reference
double offset = get_precomputed_offset(job_index, data); // Also read-only
// Save the result
std::string filename = std::string("/my_path/") + std::to_string(job_index) + ".txt";
std::ofstream file(filename, std::ios::app);
if (file.is_open()) {
file
Подробнее здесь: [url]https://stackoverflow.com/questions/79637231/is-using-stdasync-with-file-i-o-and-random-number-generation-thread-safe-and[/url]
Я пишу многопоточную программу C ++, где каждый поток генерирует случайное число и записывает ее в отдельный файл .txt . Основная функция выглядит так: < /p> [code]void run(unsigned long job_index) { // Generate a random number std::random_device rd; std::mt19937 gen(rd()); std::uniform_real_distribution dist(-1.0, 1.0); double value = dist(gen);
// Call a helper function that reads from shared data via reference const auto& data = get_shared_data(); // Read-only reference double offset = get_precomputed_offset(job_index, data); // Also read-only
// Save the result std::string filename = std::string("/my_path/") + std::to_string(job_index) + ".txt"; std::ofstream file(filename, std::ios::app); if (file.is_open()) { file