|
|
|
Synchronize
|
|||
|---|---|---|---|
|
#18+
Всем привет. Я ожидал то, что у меня прогресс бар из процедуры Runparalel будет работать( будет осуществляться визуальная имитация процесса загрузки), а по факту форма просто виснет. Код: 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. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2021, 15:10 |
|
||
|
Synchronize
|
|||
|---|---|---|---|
|
#18+
Ildar007, нажми на Pause и посмотри где какой поток висит и чего ждет, переключаться между потоками в окне Threads. присвоение позиции лучше заменить на Form1.ProgressBarConvert.Step что ли, точно не помню, потоки могут заканчиваться в разнобой, сначала 9ый, потом 1ый ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2021, 16:04 |
|
||
|
Synchronize
|
|||
|---|---|---|---|
|
#18+
Ildar007, кстати, проверь ALengthArray, равен ли он длине массивов (Length(AArraySourceNameFile)) и не отличаются ли длины у двух массивов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2021, 16:21 |
|
||
|
Synchronize
|
|||
|---|---|---|---|
|
#18+
TParallel.For performs a threaded execution of the iteration events, but itself is a blocking method. So for this you will have to be careful with the synchronization, if you start this from the main thread. The use of TThread.Queue works safely but as you already noticed, all the queued events are processed after TParallel.For has finished - in fact, after leaving the method and return to idle. The use of TThread.Synchronize will cause a dead lock, if you use it in the iteration events and start TParallel.For from the main thread. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2021, 16:47 |
|
||
|
Synchronize
|
|||
|---|---|---|---|
|
#18+
Ildar007 Я ожидал то, что у меня прогресс бар из процедуры Runparalel будет работать( будет осуществляться визуальная имитация процесса загрузки), а по факту форма просто виснет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2021, 19:15 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=23&tid=2037486]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
65ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 396ms |

| 0 / 0 |
