Форум программистов, компьютерный форум CyberForum.ru

Поток с бесконечным циклом - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ По заданному году получить по порядку все числа, на которые в каждом месяце попадает последняя пятница http://www.cyberforum.ru/cpp-beginners/thread1213468.html
Задали задание, нужна помощь. Заранее благодарю. Написать программу в C++. Задание: В библиотеке каждая последняя пятница каждого месяца- санитарный день. Составить прогу , которая позволяла бы получить по порядку все числа, на которые в январе, феврале...декабре n-ного года приходится сан.день. Значение года-n, которое может вводить пользователь, ограничено диапозоном с 1970 по 2037.
C++ Записать целое число буквами (можно ли упростить код?) Здравствуйте помогите упростить код. Условие: Напишите программу которая вводит целое число, не превышающее 100, и выводит его прописью, например, 21→"двадцать один". Мой код #include <iostream> using namespace std; int main () { int a,b,c ; http://www.cyberforum.ru/cpp-beginners/thread1213446.html
Правильно ли реализовано удаление элемента из массива и совершен вызов деструктора? C++
я ведь правильно определил удаление элемента из массива и совершил вызов деструктора? class ECM { ..... } ECM *pECM; .... void ECM::~ECM() { cout<<"Удален";
Задача "Кто старше?" (подскажите где ошибка в коде) C++
Здравствуйте!подскажите где может быть ошибка, на сайте показывает частичное решение, Условие: Программа принимает три числа: возраст Антона, возраст Бориса и возраст Виктора. Определите, кто из них старше остальных. Входные данные Входная строка содержит три натуральных числа: возраст Антона, возраст Бориса и возраст Виктора. Выходные данные Выходная строка должна содержать латинскую букву...
C++ Реализация алгоритма сжатия JPEG http://www.cyberforum.ru/cpp-beginners/thread1213376.html
помогите пожалуйста! после завтра диплом уже защищать, а я ни на шаг не могу сдвинуться с этой прогрммой(( нужно написать на С++ алгоритм сжатия изображения JPEG.
C++ Баг в реализации Хаффмана Здравствуйте, дорогие форумчане. Тут такой вопрос - алгоритм почему-то "теряет" последнюю букву в тексте, если его размер очень мал. Например, если на вход подается "Raiden", то после сжатия и разжатия будет "Raide". Либо в редких случаях бывает даже добавление буквы в конец разархивированного сообщения. Отладка и гугление пока что ничего не дали. Прошу вашей помощи. Вот код #include <iostream>... подробнее

Показать сообщение отдельно
DiffEreD
 Аватар для DiffEreD
1420 / 757 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
22.06.2014, 00:29     Поток с бесконечным циклом
Цитата Сообщение от Bretbas Посмотреть сообщение
у меня в любом исходе остается бесконечный цикл. Это слишком нежелательно, или все-таки можно иногда так делать?
Вопрос не до конца понял. Что именно не желательно?
Попробую дать вот такой пример:
C++
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
39
40
41
42
43
#include <iostream>
#include <mutex>
#include <condition_variable>
#include <thread>
#include <atomic>
#include <chrono>
 
std::condition_variable cv;
std::mutex cv_m;
std::atomic<int> flag{0};
 
void waits() {
    std::unique_lock<std::mutex> locker(cv_m);
    while(true) {
        if (!cv.wait_for(locker, std::chrono::milliseconds(10), []{return flag == 1;}))
        {
            std::this_thread::sleep_for(std::chrono::milliseconds(400));
            std::cout << "Working into waits()...\n";
        }
        else {
            std::cout << "Work into waits() DONE!\n";
            break;
        }
    }
}
 
void do_something_else() {
    for (int i = 0; i < 10; ++i) {
        std::cout << "Work into do_something_else()...\n";
        std::this_thread::sleep_for(std::chrono::seconds(1));
    }
    flag = 1;
    cv.notify_one();
}
 
int main()
{
    std::thread t(waits);
    do_something_else();
    t.join();
 
    return 0;
}
 
Текущее время: 19:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru