|
|
|
И опять про потоки и про формы
|
|||
|---|---|---|---|
|
#18+
BasketbolЕсть некие последовательности действий: сделать то то, подождать выполнения какого то условия, сделать паузу столько то секунд и другие. Некоторые из этих действий затрагивают компоненты VCL. т.е. вам надо выполнить асинхронные задачи, а процесс ее выполнения, и промежуточные этапы отображать на экране? Вы можете описать реальную задачу... Вангую что TThread в явном виде вам не понадобится и не нужно городить вокруг него непонятно что.. Зачем самому создавать потоки, если можно более компактно все сделать через таски... Потоки самостоятельно создают только в том случае, если они должны жить долго и выполнять задачи очередей... Все остальные случаи закрывают таски... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2019, 15:04 |
|
||
|
И опять про потоки и про формы
|
|||
|---|---|---|---|
|
#18+
Zeliusziv-2014пропущено... Какая разница - всеравно в основном потоке исполнится. доп поток вызывает Syncrhonize, в котором вызывается Application.PrcoessMessages, в это время пользователь нажимает закрыть форму, у которой в OnClose стоит FThread.Free (Terminate+WaitFor+Destroy), а поток висит в TMonitor.Wait(SyncProcPtr.Signal, ThreadLock, INFINITE) - дедлок. Если поток уничтожать в OnDestroy, то дедлока не будет. Код: pascal 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. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. В synchronize лучше не делать операций с циклами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2019, 15:28 |
|
||
|
И опять про потоки и про формы
|
|||
|---|---|---|---|
|
#18+
Ну, вызывать ProcessMessages из Synchronize - это хрестоматийный "выстрел себе в ногу". Сдуру, как говорится, можно и хрен сломать. С другой стороны, этот вызов м.б. закопан в глубине вызовов возможно даже чужого кода. Так что и то, и другое лучше избегать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2019, 16:43 |
|
||
|
И опять про потоки и про формы
|
|||
|---|---|---|---|
|
#18+
Василий 2Сдуру, как говорится, можно и хрен сломать. Вы - как дети, ей Богу. ТС азов не знает, для него ваши теоретические выкладки подобно игре в шахматы с доской и фигурами в уме. Лучше напишите ему минимально рабочий код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2019, 17:40 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39839974&tid=2039232]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
168ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 209ms |
| total: | 491ms |

| 0 / 0 |
