|
Простая реализация многопоточности на VB6 средствами ActiveX EXE без WinAPI и падений IDE
|
|||
---|---|---|---|
#18+
Вот попался мне такой замечательный исходник. Пример реализации многопоточности на VB. На его основе, например можно сделать многопоточный Winsock сервер обрабатывающий запросы пользователей без задержки. Для запуска примера надо сделать следующее: автор1) Unzip the source code to a folder, making sure to preserve directorys. There are 2 separate projects, and one is in a seperate folder. 2) Open the activex threader project 'prjThreader.vbp' in vb and press ctrl+F5 to run it (start with full compile) 3) Open the 'prjTest.vbp' project in vb and goto Project > References and make sure there is a reference to 'ActiveX Threader', if not make sure it is. You may have to uncheck it, save the project, close and re-open it, and recreate the reference again. 4) run the test project, and check out Example 2, to see how multi threading can work Действительно это работает! ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2018, 10:44 |
|
Простая реализация многопоточности на VB6 средствами ActiveX EXE без WinAPI и падений IDE
|
|||
---|---|---|---|
#18+
Eolt, Eoltбез WinAPI Код: vbnet 1. 2. 3.
Был пример на vbstreets без API с таймером, смысл тот же самый (асинхронный посыл сообщения). Но тут 2 проблемы, главная - без админа не будет работать просто так (+необходима регистрация при установке). Вторая, необходимость таскать 2 бинарника. Если второй момент не смущает, я бы лучше посоветовал эту dll (тут можно обойти первое ограничение "малой кровью" через манифест), но с отладкой там тоже траблы (придется отлаживать в основном потоке). ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2018, 11:30 |
|
Простая реализация многопоточности на VB6 средствами ActiveX EXE без WinAPI и падений IDE
|
|||
---|---|---|---|
#18+
ATM-TURBO 2, Апишный таймер там вроде не особо нужен. А CopyMemory не используется в коде нигде. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2018, 11:59 |
|
Простая реализация многопоточности на VB6 средствами ActiveX EXE без WinAPI и падений IDE
|
|||
---|---|---|---|
#18+
EoltАпишный таймер там вроде не особо нужен. Не, тогда придется заменять формой с таймером. Либо делать через PostMessage, APC и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2018, 12:10 |
|
Простая реализация многопоточности на VB6 средствами ActiveX EXE без WinAPI и падений IDE
|
|||
---|---|---|---|
#18+
Запускать надо под- админом только один раз же. Чтобы зарегать ActiveX EXE. Потом все работает и без админских прав. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2018, 12:13 |
|
Простая реализация многопоточности на VB6 средствами ActiveX EXE без WinAPI и падений IDE
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2018, 21:05 |
|
Простая реализация многопоточности на VB6 средствами ActiveX EXE без WinAPI и падений IDE
|
|||
---|---|---|---|
#18+
EoltATM-TURBO 2, Кстати, что ты думаешь на счет этой реализации? Неплохая в принципе, если использовать RC5 фреймворк в проекте, то можно заюзать, но это также дополнительно требует отдельный модуль для работы в который нужно компилировать код (т.е. для работы нужно дополнительно 2 dll). Асинхронный вызов также реализован у меня, но там не требуется ничего больше. Кстати у Олафа также есть пример с мультипроцессингом , в некоторых задачах это даже более безопасно. Я у себя в новой версии TrickComposer использую свой модуль, который публиковал тут недавно. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2018, 21:31 |
|
|
start [/forum/topic.php?fid=60&msg=39668714&tid=2155040]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 280ms |
total: | 410ms |
0 / 0 |