Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 5
Регистрация: 09.10.2015
Сообщений: 229

Очередь потоков

15.03.2018, 10:53. Показов 1306. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую всех. Помогите разобраться с очередью потоков я опишу пример если не сложно набросайте код к примеру и я всё пойму. Сам пример, есть форма на форме одна кнопка при нажатии на которую в очередь добавляется новый поток если он первый начинает выполнение параллельно основному, если в очереди есть потоки тогда он становиться в конец и ожидает своей участи без зависания основного потока, короче параллельный поток должен быть только один и все потоки должны выполняться строго в той же последовательности как была нажата кнопка. Почему то мне казалось что это простая задача но где то я что то упустил. Спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.03.2018, 10:53
Ответы с готовыми решениями:

Как реализовать очередь нескольких потоков?
Здравствуйте, коллеги! Посоветуйте, как мне реализовать очередь нескольких потоков? Мне нужно сделать так, чтобы после выполнения одного...

Синхронизация потоков на элементарном уровне (переключение потоков)
в общем разбираюсь с потоками, на сколько понял мне нужен lock Вот имеется просто пример public void RunAdd() ...

Синхронизация потоков: проблема гонки потоков
Есть проблема в синхронизации потоков, которую я не знаю, как решить. Точнее у меня получается типичная гонка потоков. Есть функция,...

5
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.03.2018, 10:57
Лучший ответ Сообщение было отмечено Graf1385 как решение

Решение

Цитата Сообщение от Graf1385 Посмотреть сообщение
Почему то мне казалось что это простая задача
Она действительно не сложная.

Цитата Сообщение от Graf1385 Посмотреть сообщение
но где то я что то упустил.
Упустили вы основной момент: если у вас в каждый момент времени должен работать только один поток, то зачем создавать новые потоки только для того, чтобы онитут же были заблокированы?
Поток — это очень дорогостоящий ресурс, создавать его только для того, чтобы он тут же был заблокирован — несусветная глупость.
Если нужно чтобы параллельно выполнялся только один поток, то пусть и работает этот один поток, а в очередь добавляйте данные, которые он должен последовательно обрабатывать.
1
0 / 0 / 5
Регистрация: 09.10.2015
Сообщений: 229
15.03.2018, 11:11  [ТС]
Если нужно чтобы параллельно выполнялся только один поток, то пусть и работает этот один поток, а в очередь добавляйте данные, которые он должен последовательно обрабатывать.
То есть лучше создать очередь из данных которые будут пополняться при нажатии кнопки, а поток в цикли будет постоянно проверять наличие данных в очереди и последовательно обрабатывать их?
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.03.2018, 11:32
Graf1385, да, конечно.
1
0 / 0 / 5
Регистрация: 09.10.2015
Сообщений: 229
15.03.2018, 11:33  [ТС]
Уже сделал работает спасибо.
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
15.03.2018, 11:37
Лучший ответ Сообщение было отмечено Graf1385 как решение

Решение

Цитата Сообщение от Graf1385 Посмотреть сообщение
Уже сделал работает
Не забывайте про синхронизацию.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.03.2018, 11:37
Помогаю со студенческими работами здесь

Разработать программу, генерирующую n потоков в пуле потоков CLR
Добрый вечер. Решил поделать старые лабораторные, которые мне уже давно нужно было сдавать, но встрял на одном задании: "Разработать...

Очередь потоков
1. Два потока должны выводить по очереди слова из предложения. 2. Алфавит. Один поток выводит на консоль гласные буквы, другой согласные....

Очередь из 3-х потоков
Может кто-то сделать пример очереди из трех потоков, например, чтобы первый выводил "А", второй "Б", а третий...

Очередь потоков
Есть несколько серверов, которые отправляют http-запросы в приложение, соответственно формируются потоки для обработки каждого запроса. В...

Как реализовать очередь потоков
Всем привет. Есть такая задача: надо реализовать очередь потоков. В один момент времени может выполняться только 10 потоков. Когда...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru