|
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
|
|||||||||||
Правильно ли организован поток?08.10.2014, 20:12. Показов 5751. Ответов 94
Метки нет (Все метки)
Всем доброго времени суток, задался таким вопросом, а правильно ли составлен этот код потока, основан на критической секции. привожу :
0
|
|||||||||||
| 08.10.2014, 20:12 | |
|
Ответы с готовыми решениями:
94
Правильно вызвать поток Правильно ли организован поток в приведенном коде Правильно ли организован ввод строки |
|
0 / 0 / 0
Регистрация: 11.10.2014
Сообщений: 12
|
|
| 13.10.2014, 12:22 | |
|
mss,
Код хоть бы проверили, прежде чем бестолково кнопки нажимать. При работе форму не закрыть, наверно таймер поставить надо? Ждус, умный совет.
0
|
|
|
Модератор
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
|
|||
| 13.10.2014, 12:40 | |||
|
0
|
|||
|
0 / 0 / 0
Регистрация: 11.10.2014
Сообщений: 12
|
|
| 13.10.2014, 12:49 | |
|
FIL,
здрасте. Да не, все нормально, mss одобрил. Там просто таймеры нужны.
0
|
|
|
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
|
|
| 13.10.2014, 13:35 | |
|
0
|
|
|
7 / 7 / 4
Регистрация: 13.09.2013
Сообщений: 96
|
|
| 13.10.2014, 18:13 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 11.10.2014
Сообщений: 12
|
||
| 13.10.2014, 18:43 | ||
|
mss прав оказался с советом, нужно было компонент таймера применить. Сделал, все без проблем сейчас. Учитесь у mss, он дело советует, лучший из лучших кодеров.
0
|
||
|
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
|
||
| 13.10.2014, 20:57 | ||
|
Где я говорил про то что применение таймера избавляет от "проблем" ?) Не было такого и быть не могло)
0
|
||
|
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
|
|
| 15.10.2014, 22:43 [ТС] | |
|
ребят, я так и не нашел решения. В общем по сути ка работать с потоком я понял, как передавать ему нужно строку я понял, но не знаю как сделать только вот что : как послать потоку каждый раз новую строку с стринглиста ? все время делать Thread1 := TMyThread.Create(stroka,True); не подойдет, т.к , если будет 2000 строк, то 2000 раз писать что ле ?) попытался сделать циклом , тоже не подошло т.к поток не хотел останавливаться, подскажите, как ?
Добавлено через 2 минуты пожалуйста, не надо меня валить теорией и говорить загадками, просто покажите пример. Да, я знаю , что изучив теорию , там много чего найду, но сколько не смотрел , не читал нигде не было как посылать каждый раз новую строку потоку пока не закончатся строки в стринглисте. Благодарен за понимание
0
|
|
|
Модератор
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
|
|
| 15.10.2014, 22:56 | |
|
0
|
|
|
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
|
||||||||||||||||
| 15.10.2014, 23:16 [ТС] | ||||||||||||||||
Испробую. Добавлено через 7 минут сделал так :
0
|
||||||||||||||||
|
Модератор
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
|
||||
| 15.10.2014, 23:22 | ||||
|
0
|
||||
|
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
|
|||
| 15.10.2014, 23:30 [ТС] | |||
|
0
|
|||
|
Модератор
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
|
|
| 15.10.2014, 23:35 | |
|
Потоками я называю доп. потоки, телом которых является процедура Execute и в этом теле у тебя, зачем-то, прописан бесконечный цикл.
0
|
|
|
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
|
||
| 15.10.2014, 23:43 [ТС] | ||
|
0
|
||
|
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
|
|||
| 15.10.2014, 23:47 | |||
|
Сказано же черным по-русски - не лезь из доп.потока ни в форму ни в компоненты на ней ! Даже в синхронизированном с осн.потоком методе не лезь - нечего там доп.потоку делать) О том, что поток закончил расчеты, он может известить другие заинтересованные потоки миллионом разных способов, например, уже встроенным событием OnTerminate, обработчик которого можно сделать методом формы, которая сама заберет у доп.потока рез-ты расчетов и выведет из при необходимости на свои мемо и прочие контролы. Добавлено через 2 минуты И с примерами даже иногда. какого лешего, спрашивается ?)
0
|
|||
|
Модератор
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
|
||
| 15.10.2014, 23:52 | ||
|
https://www.cyberforum.ru/post6713163.html https://www.cyberforum.ru/post6713424.html
0
|
||
|
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
|
||||||||||||||
| 16.10.2014, 00:00 [ТС] | ||||||||||||||
0
|
||||||||||||||
|
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
|
||||
| 16.10.2014, 00:10 | ||||
|
Компонентами формы-то они от этого быть не перестали) Так а зачем его защищать, если нет очевидных противопоказаний к тому, чтобы он не был общим и его контролировал только основной поток, а другие потоки туда не лезли, ибо все что нужно для расчетов осн.поток сам им передаст при создании ?
0
|
||||
|
1 / 1 / 2
Регистрация: 26.08.2013
Сообщений: 381
|
||
| 16.10.2014, 00:30 [ТС] | ||
|
Добавлено через 1 минуту а может просто в execute в конец написать Thread1.Terminate; ? или такой способ не подойдет ?
0
|
||
|
3530 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,723
|
||
| 16.10.2014, 00:39 | ||
|
Добавлено через 2 минуты точнее зависнуть он при не перекрытом Execute может только если ты накосячил в перекрытом методе DoTerminate либо в назначенном тобой обработчике OnTerminate
0
|
||
| 16.10.2014, 00:39 | |
|
Правильно завершить поток Правильно завершить поток
Как правильно отправить в поток?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|