Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Программирование под *nix > C++ на Unix
Перезагрузить страницу Многопоточная программа. Вывод в общий файл из нескольких потоков
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Жанек Жанек вне форума
Новичок
 
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.07.2017
По умолчанию Многопоточная программа. Вывод в общий файл из нескольких потоков - 02.07.2017, 11:21

Доброго времени суток! Очень нужна ваша помощь, вот такое задание: Необходимо разработать программу, состоящую из 3 потоков. С функцией -последовательный вывод в общий для всех потоков файл. Интервалы выполнения для каждого потока – 1,2,3 с. Есть код:

cpp Код:
#include <chrono>
#include <fstream>
#include <mutex>
#include <thread>
#include <vector>
 
void Foo(std::mutex &m, std::ostream &out, const size_t sec)
{
    while (true)
    {
        {
            std::lock_guard<std::mutex> lock(m);
            out << std::this_thread::get_id() << std::endl;
        }
        std::this_thread::sleep_for(std::chrono::seconds(sec));
    }
}
 
int main()
{
    std::vector<std::thread> tasks;
    std::mutex mtx;
    std::ofstream out("output.txt");
    for (const auto s: {1, 2, 3})
        tasks.emplace_back(Foo, std::ref(mtx), std::ref(out), s);
 
    for (auto &t: tasks)
        t.join();
}
Но проблема при открытии в среде ОС FreeBSD (прикреплен скрин) помогите пожалуйста, как избавиться от этих ошибок и запустить, может в коде ошибки какие то. Спасибо заранее
Миниатюры
v6_ay-3r_tg.jpg  

Последний раз редактировалось Alexiski; 02.07.2017 в 12:41 Причина: Добавил тэги
Ответить с цитированием
  (#2 (permalink)) Старый
Alexiski Alexiski вне форума
Любитель давать советы
 
Сообщений: 4,248
Сказал(а) спасибо: 26
Поблагодарили 51 раз(а) в 51 сообщениях
Регистрация: 16.10.2005
По умолчанию 02.07.2017, 12:49

Там же Вам чистым английским языком написано: поставьте опцию -std=c++11

И компилировать надо через g++, а не через gcc - иначе линковщик не найдёт библиотеки
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Общий обработчик для нескольких кнопок alexu C++ Builder 4 20.04.2011 23:30
Программа на вывод данных содержащихся в файле st.txt K16FORWARD Вопросы начинающих программистов 4 13.12.2010 21:11
Многопоточная обработка файла Andrewshkovskii С/С++ 2 05.02.2009 17:39
Выбрать файл по определенному содержимому из нескольких в одной папке RomaS Visual Basic 3 17.09.2008 20:28
Одновременный вызов WMI из нескольких потоков Glen Visual C++ 0 27.12.2005 13:39
Как направить вывод в файл KDenisK Prolog 5 18.12.2005 20:44
Вывод из С++ нескольких отчетов в Excel IChe Visual C++ 6 21.09.2005 01:32
Вывод из вызываемого ехе не в файл, а в написанную программу -dim- C++ Builder 1 25.07.2005 18:41
Вывод из VBA в DBF-файл mns Visual Basic 9 12.02.2005 19:43
Вывод в DBGrid поля из нескольких таблиц Anonymous C++ Builder 19 06.01.2004 11:11
MFC и файлы вывод данных в файл Anonymous Visual C++ 1 28.11.2003 12:16
Вывод нескольких Bitmap в программу Anonymous Visual C++ 2 20.01.2003 02:44



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов