Дело в следующем:
Есть элемент TCP_Server (_Client), через него можно отправлять/получать данные. Если в момент прихода данных поток чем-то занят, то случаются тормоза. Можно было бы решить это запуском дополнительного потока ипользую Thread, но этот элемент генерит событие "NULL", в то время, как на вход его поступают принятые данные. Может быть я не прав, и задача решается коррекцией элемента TCP - чтобы выдавал принятые данные в новом потоке ?
Какие будут мысли
Этот топик читают: Гость
Ответов: 3851
Рейтинг: 159
|
|||
карма: 0 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Андрей. писал(а): Какие будут мысли Мысли возникают после постановки задачи. Потому что это: но этот элемент генерит событие "NULL", в то время, как на вход его поступают принятые данные - не постановка, ИМХО |
|||
карма: 9 |
|
Ответов: 3851
Рейтинг: 159
|
|||
Уточнение:
code_194 |
|||
карма: 0 |
| ||
файлы: 1 | code_194.txt [887B] [418] |
Ответов: 8926
Рейтинг: 823
|
|||
Андрей, если Вы хотите задержать данные на какое-то время, надо воспользоваться элементом Sleep, элемент Thread генерирует события:
|
|||
карма: 19 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Леонид, ну кто же виноват, что ты тормоз...
я же тебе все время твои посты править не буду... |
|||
карма: 9 |
|
Ответов: 8926
Рейтинг: 823
|
|||
Galkov, я и сам правил (одновременно); но не понял, почему так получается, Galkov, поясните и я не буду тормозить
|
|||
карма: 19 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Андрей., твой пример не имеет никакого отношения к твоей же фразе: "Если в момент прихода данных поток чем-то занят, то случаются тормоза"
Т.е., запуск параллельного потока после приема данных, никак не уберет тормоза, которые случились "в момент прихода данных" Кстати, о каких тормозах идет речь тоже ведь не очень понятно. Леонид, нажми кнопу <Цитата> и сравни то, чего было раньше, с тем, что есть сейчас... И чур ко мне претензии не предъявлять... |
|||
карма: 9 |
|
Ответов: 3851
Рейтинг: 159
|
|||
Galkov "тормоза" - это когда форма замирает. Думал, что Thread поможет, теперь и сам вижу, что не поможет. Как же сделать, чтобы данные принимались в новом потоке ?
Леонид задержку потока пока не знаю как применить - ведь неизвестно на какое время нужно задерживать. |
|||
карма: 0 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Андрей., большая просьба написать минимальную программу, в которой можно бы было увидеть тормоза основной формы.
Прием и чтение данных из сокета уже осуществляется в потоке. После того, как пакет был принят данные отправляются в очередь сообщений скрытого окна и затем через точку onRead поступают к пользователю на обработку. |
|||
карма: 27 |
|
Ответов: 3851
Рейтинг: 159
|
|||
Dilma, вот схема code_19 , попробуй переслать файл ~10МБ - для наглядности.
|
|||
карма: 0 |
| ||
файлы: 1 | code_19.txt [1.8KB] [383] |
10