|
|
|
Многопоточное приложение
|
|||
|---|---|---|---|
|
#18+
Возможно ли создать многопоточное приложение с помощью Акса(АДП вариант). Мне нужно асинхронно вызывать метод опроса весов, чтоб не тормазил при этом сам интерфейс программы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 13:02 |
|
||
|
Многопоточное приложение
|
|||
|---|---|---|---|
|
#18+
cм. DoEvents ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 13:04 |
|
||
|
Многопоточное приложение
|
|||
|---|---|---|---|
|
#18+
doevents тут тебе не поможет - он позволяет в определенном месте кода уступить место для другого, но поток все равно один. если повиснет оператор - прервется процесс опроса. как вариант можно написать компонент-службу (отдельное приложение) которая бы постоянно была бы запущена и складывала результаты в табличку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 13:19 |
|
||
|
Многопоточное приложение
|
|||
|---|---|---|---|
|
#18+
авторчтоб не тормазил при этом сам интерфейс программы. ИМХО - для этого DoEvents дотаточно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 13:22 |
|
||
|
Многопоточное приложение
|
|||
|---|---|---|---|
|
#18+
АлексейК прав, пока выполняется метод никакой Doevents не поможет ... да него еще управление да же не дошло. А вот в самом методе DoEvents не помешал бы :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 13:29 |
|
||
|
Многопоточное приложение
|
|||
|---|---|---|---|
|
#18+
В общем сделаю сервис который будет весы опрашивать и в текстовый файлик данные класть, а оттуда буду считывать аксессом... Просто опрос весов 300мс, каждую секунду... Треть всего рабочего веремени интерфейс не реагирует... Спасибо за идеи и ответы :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 14:30 |
|
||
|
Многопоточное приложение
|
|||
|---|---|---|---|
|
#18+
авторнужно асинхронно вызывать метод опроса весов кто такие весы и что хоть примерно должен делать метод. Если обращение к базе, то - можно заказать асинхронное обращение к данным, однако платой за это будет резкое усложнение логики приложения. В смысле интерфейса - Access, в нектором смысле, и так "многопоточен", - окна он "при помощи" Windows разрисовывает. Если ты самописный "градусник" отрисовываешь, то, как раз DoEvents поможет ему отрисовываться "синхронно" с процессом исполнения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 14:33 |
|
||
|
Многопоточное приложение
|
|||
|---|---|---|---|
|
#18+
А если сваять две базы: одна опрашивает весы и скидывает данные через прилинкованные таблицы во вторую. Ну, а во второй сам интерфейс и таблички. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:33 |
|
||
|
Многопоточное приложение
|
|||
|---|---|---|---|
|
#18+
а собственно ничто не мешает создать самому второй поток, и третий, и сколько надо. ничего там военного нет, в молодости мы такое делали на ВБ5, и все нормально было в конце концов. Ведь есть же возможность использовать функции ВинАПИ. Сейчас уже не помню всех подробностей, давненько это было, если надо, могу конечно покопаться. Граблей в многопоточности конечно много очень, с синхронизацией и реентерабельностью, но они вполне решаемы опять же с помощью АПИ, кртитческих секций, семафоров и прочего подобного. а однопоточность ВБ приложений проявляется только в том, что там нету объекта вроде TThread ил какого нибудь CThread, и приходится все делать руками. Зато преимуществом будет то, что ты остаешься в приложении, и есть доступ к базе и всем ее объектам ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:58 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32546928&tid=1674132]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
165ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 475ms |

| 0 / 0 |
