powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
25 сообщений из 64, страница 2 из 3
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109230
bk0010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_
FreeAdman
пропущено...
Я иногда пользуюсь.
Единственное адекватное применение - какие-то тестовые приложения. Всё.
Да если бы: недавно решали проблему с тем, что глючила (переставала отвечать) аппаратура, с которой работала наша программа. Проблему решила команда sleep(10) перед отправкой пакета (нигде в документации на аппаратуру и протоколы с ней не были указаны никакие задержки). Ну, и sleep(0) тоже иногда пользу приносить может.
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109237
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bk0010нигде в документации на аппаратуру и протоколы с ней не были указаны никакие
задержки

А контроль потока был там указан? Обычно такие трюки нужны когда его забывают
включать/распаивать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109243
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ок. Все против Sleep. Но никто не объяснил почему :)

bk0010
недавно решали проблему с тем, что глючила (переставала отвечать) аппаратура, с которой работала наша программа.

И это была ЭЭГ в клинике
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109248
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdmanВсе против Sleep. Но никто не объяснил почему :)

Потому что в GUI приложениях главный поток должен непрерывно обрабатывать
приходящие сообщения. Sleep этому мешает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109250
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

Дык! Я то думал, речь идёт об отдельных потоках. С GUI ясен пень.
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109252
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdmanЯ то думал, речь идёт об отдельных потоках.

А отдельные потоки создаются для того чтобы они работали, а не спали. Если им
нечего делать - они должны либо завершиться, либо ожидать сигнала к завершению
или новой работе. Sleep этому мешает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109253
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov, от ситуации. Бывает надо паузу вставить чтобы не молотило когда в том нет необходимости
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109255
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdmanБывает надо паузу вставить чтобы не молотило когда в том нет необходимости

В этом случае поток должен ожидать сигнала к завершению или продолжению работы.
Sleep этому мешает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109263
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov
FreeAdmanБывает надо паузу вставить чтобы не молотило когда в том нет необходимости

В этом случае поток должен ожидать сигнала к завершению или продолжению работы.
Sleep этому мешает.

Вы будто ограничены. Почему бы не научиться смотреть шире? А потом я задаюсь вопросом, почему современное ПО такое паршивое... Да потому что "я просто ехал прямо"
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109265
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdmanА потом я задаюсь вопросом, почему современное ПО такое паршивое...

А зачем задаваться вопросом с так очевидным ответом "всё хз сколько лет работает
без проблем"?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109271
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov
FreeAdmanА потом я задаюсь вопросом, почему современное ПО такое паршивое...

А зачем задаваться вопросом с так очевидным ответом "всё хз сколько лет работает
без проблем"?

Раньше (лет эдак 15-20+) как-то больше уделяли внимание мелочам и были ближе к железу, ибо вынуждены были разбираться как всё работает и, представьте себе, даже головой соображать.

Сейчас поди спроси у новых кодеров, не так давно выползших с пелёнки, чавой такое стэк или почему прога получает отказ при попытке зарезервировать цельным куском свободную, но фрагментированную память, не говоря уже за заоблачные вопросы на которые даже распальцованые дяди ответить не могут чётко.

Сейчас куча фреймворков, конструкторов, всё само выделяет, следит, освобождает. С++ вообще считаю конченым - чем больше проект, тем засранее он становится в космических масштабах.
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109272
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov, да и раньше кодер был и сам себе тестировщиком, а сейчас уже не нужно об этом заботиться, ибо есть тестировщики на зарплате, а следовательно можно особо и не напрягаться головой :)
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109275
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdmanРаньше (лет эдак 15-20+) как-то больше уделяли внимание мелочам и были ближе к
железу, ибо вынуждены были разбираться как всё работает и, представьте себе,
даже головой соображать.

Нет, ни 15, ни 20, ни даже 25 лет назад ничего такого среди дельфинов не
наблюдалось.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109276
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdman
Почему бы не научиться смотреть шире?
Приведите пример, когда поток нужно остановить строго на указанное время (попутно вспоминаем, что Windows - это не RTS), причем так, чтобы он перестал отвечать на любые внешние воздействия?
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109277
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov, а причём тут конкретно дельфины? Если речь о программистах в общем.

Да и к тому же в Дельфях вполне использовались ассемблерные вставки время от времени, поди расскажи мне что 20 лет назад про стэк никто не знал
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109278
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdmanподи расскажи мне что 20 лет назад про стэк никто не знал

При чём тут стэк? Мемы "бесформенная форма" или "туда где часики", Вам,
очевидно, ничего не говорят?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109279
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_
FreeAdman
Почему бы не научиться смотреть шире?
Приведите пример, когда поток нужно остановить строго на указанное время (попутно вспоминаем, что Windows - это не RTS), причем так, чтобы он перестал отвечать на любые внешние воздействия?


Так то в целом это не нужно никогда. Бывает, когда задача ёмкая на несколько часов, например, и в быстром выполнении тоже нужды нет, достаточно чтобы поток попросту висел и тихонько выполнял задачу, при том не грузил ядро на 100% или диск или Бог знает что ещё.

Или, например, в неком цикле ожидание освобождение некого ресурса чтобы его вновь занять, зачем такому циклу молотить 10 млн раз в секунду и вешать ядро, если это не критично? Как его притормозить? Только не говорите, что надо таймер использовать

Dimitry Sibiryakov
FreeAdmanподи расскажи мне что 20 лет назад про стэк никто не знал

При чём тут стэк? Мемы "бесформенная форма" или "туда где часики", Вам,
очевидно, ничего не говорят?..

Угу. Я неуч. Мне лишь бы поумничать :)
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109282
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdman,

К Sleep в потоке только одна претензия, он внутри себя на Thread.Terminated не проверяет.
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109284
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rgreat
FreeAdman,

К Sleep в потоке только одна претензия, он внутри себя на Thread.Terminated не проверяет.


Никогда с этим не сталкивался т.к. завершал потоки немного иначе, и Sleep отрабатывал, а после завершал, если так нужно было, иначе зачем создавать поток для управления другим потоком?
Должна быть синхронизация и порядок, а не хаос и беспорядок.

Если в потоке вы что-то вызвали - будьте добры, дайте ему завершиться, или же заранее предусмотрите корректную останову потока :)
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109286
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdman
Никогда с этим не сталкивался т.к. завершал потоки немного иначе
Как?
и Sleep отрабатывал, а после завершал, если так нужно было, иначе зачем создавать поток для управления другим потоком?
Должна быть синхронизация и порядок, а не хаос и беспорядокТак пока слип не отработает, поток штатно не завершится.
Если слип короткий - это не проблема, просто немного не красиво.
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109287
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rgreat
Так пока слип не отработает, поток штатно не завершится.
Если слип короткий - это не проблема, просто немного не красиво.

Зависит от ситуации. Но больших слипов я никогда не применяю, вместо них я использую таймеры или ивенты - снова же от ситуации
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109288
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdman
быстром выполнении тоже нужды нет, достаточно чтобы поток попросту висел и тихонько выполнял задачу, при том не грузил ядро на 100% или диск или Бог знает что ещё.
Код: pascal
1.
ThreadPriority := tpLowest;



FreeAdman
Или, например, в неком цикле ожидание освобождение некого ресурса чтобы его вновь занять,
Код: pascal
1.
EnterCriticalSection()/WaitForSingleObject(Mutex, INFINITE)/WaitForMultipleObjects([Mutex, ExitEvent], INFINITE)


FreeAdman
Только не говорите, что надо таймер использовать
Какой таймер, если цель получить ресурс, а не подождать n-секунд?
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109290
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_
Код: pascal
1.
ThreadPriority := tpLowest;


До вас не достучаться. Вы за своё и флаххх вам фф рукки.

_Vasilisk_

Код: pascal
1.
EnterCriticalSection()/WaitForSingleObject(Mutex, INFINITE)/WaitForMultipleObjects([Mutex, ExitEvent], INFINITE)


А если это array[i].FreeBool ? Или ещё что?

_Vasilisk_

FreeAdman
Только не говорите, что надо таймер использовать
Какой таймер, если цель получить ресурс, а не подождать n-секунд?


Здесь никаких таймером, очевидно. Вы не улавливаете мысли в диалогах, читаете между строк.
Во-вторых, ждёт - это Sleep, а таймер - делает через интервал. Почувствуйте разницу.
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109293
FreeAdman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_Vasilisk_
Код: pascal
1.
ThreadPriority := tpLowest;



Парню, у которого подвис с оборудкой был, очень бы помог этот совет
...
Рейтинг: 0 / 0
Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
    #40109295
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FreeAdman,

Это не совет, это диверсия.

Если чтото займет процессор поток просто работать нормально не будет.
...
Рейтинг: 0 / 0
25 сообщений из 64, страница 2 из 3
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Настройка Delphi XE8 чтобы было удобно работать как в Delphi 7
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]