|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
Выкладываю DLL, которая позволяет работать с многопоточностью на VB6. Эта DLL написана мной на VB6 и имеет экспортируемую функцию vbCreateThread , являющуюся аналогом CreateThread . В IDE многопоточность не будет работать, но запуск все равно возможен просто в том же потоке. Эта DLL является копией этого стандартного модуля (просто кто не любит подключать модули и библиотеки типов могут на этапе разработки юзать эту DLL) поэтому они взаимозаменяемы. По той же ссылке есть примеры например получение списка простых чисел в другом потоке и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 11:03 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
здорово, спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 11:14 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
ATM-TURBO 2, круто! я весь твой блог прочитал от корки до корки, очень много новой и полезной информации ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 11:39 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
Баян, велосипедист опоздал на 4 года. Здесь автор сделал многопоточность, не рушащую IDE: http://bbs.vbstreets.ru/viewtopic.php?f=54&t=43507 А учитывая то, что многопоточность можно сделать вообще без костылей (в ActiveX exe), ценность библиотеки ТСа стремится к нулю. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 12:20 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
Antonariy, Где эта многопоточность? Покажи мне пример использовани этого кирпича. Я общался с автором и этот проект еще не готов, также этот кирпич не предполагает работу в IDE. Многопоточность в ActiveX EXE не будет работать без админских прав потому что требует регистрации. С помощью Reg-free это также нельзя обеспечить, потому что это работает только для in-proc серверов. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 12:58 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
ATM-TURBO 2Я общался с автором и этот проект еще не готов, также этот кирпич не предполагает работу в IDE. Что-то мне казалось, что доделал. И где-то он писал, почему ide падает и как это обходить. ATM-TURBO 2Многопоточность в ActiveX EXE не будет работать без админских прав потому что требует регистрации.Админские права нужны лишь для регистрации. Лет 15 назад подобные решения, будучи вброшенными в англоязычный интернет, могли бы придать VB6 жизни или вообще изменить его судьбу, но поезд ушел, и сейчас они интересны лишь ностальгирующим фанатам. Фанатам слышать это неприятно, но это факт. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 13:48 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
AntonariyЧто-то мне казалось, что доделал Ну прежде чем писать что пост баян и я велосипедист сначала нужно убедится в этом. Такой многопоточности нигде нет, даже у Курлянда не инициализируется проект поэтому это не работает как следует. Можешь тут посмотреть если интересно (извиняюсь за свой английский) обсуждение многопоточности и примеры. Например тут очень активно используют VB6, также там собирается команда для написания компилятора. Также там огромное количество новых библиотек и новых примеров, контролов и т.п. AntonariyАдминские права нужны лишь для регистрации. Без регистрации EXE не запустится. Это раз, во-вторых как ты собрался работать с разделяемыми данными? Покажи пример, и давай сравним как это реализовано у меня. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 13:58 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
ATM-TURBO 2 Ну прежде чем писать что пост баян и я велосипедист сначала нужно убедится в этом. Ну да, тут я дал маху. ATM-TURBO 2также там собирается команда для написания компилятораКомпилятора vb6? Их бы энергию да в мирных целях :) Зачем они это делают, они как-то объясняют? ATM-TURBO 2 Без регистрации EXE не запустится.Можешь повторить это в третий раз еще более другими словами. Более известным этот факт мне не станет, а тебе возможно доставит удовольствие. ATM-TURBO 2 Это раз, во-вторых как ты собрался работать с разделяемыми данными? Покажи пример, и давай сравним как это реализовано у меня.Я не собираюсь заниматься этим мозгоклюйством на шестерке. VB6 в коме, его IDE убога, а электрошок к нему пусть применяют те, кому это интересно. Мне нет, я здесь просто делюсь багажом уже ненужных мне знаний. У меня у самого коллекция подобных кирпичей, которые я не использовал НИ РАЗУ, даже когда активно кодил на шестерке, потому что за рамками лабораторий они, как выяснилось, нафиг не нужны. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 14:27 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
авторVB6 в коме, его IDE убога, а электрошок к нему пусть применяют те Уже через пару лет будет опенсоурсный, нативный VB7, инфа практически 100% ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 14:34 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
авторКомпилятора vb6? Их бы энергию да в мирных целях :) Зачем они это делают, они как-то объясняют? Потому, что нужна среда разработки нативных приложений для x86/x64. Сейчас в этом альтернативы C++ нет. Дельфи тоже практически помер. По плюсы многим неудобны, хочется простоту VB6 и нативный код и x64! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 14:40 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
Зачем они это делают, они как-то объясняют? VB6 единственный в своем роде, он COM (ActiveX)-ориентированный и других таких нет и не будет. Они хотят воскресить VB6 также сделать его 64-разрядным. Добавить функционал рантайм и т.п. Один из разработчиков который занимается этим (написал кучу плагинов для VB к примеру vbRichClient) предлагал мне также вступить в команду разработчиков, я сказал что по возможности буду подключаться. Можешь повторить это в третий раз еще более другими словами. Более известным этот факт мне не станет, а тебе возможно доставит удовольствие. Просто это так звучало будто без регистрации все будет работать - "Админские права нужны лишь для регистрации.", т.е. для всего остального и для работы они не нужны? Поэтому я тебе расписал, может ты не знал этого. Откуда мне знать? Я не жадный на знания. Я не собираюсь заниматься этим мозгоклюйством на шестерке. VB6 в коме, его IDE убога, а электрошок к нему пусть применяют те, кому это интересно. Мне нет, я здесь просто делюсь багажом уже ненужных мне знаний. Ну тогда не стоит писать:А учитывая то, что многопоточность можно сделать вообще без костылей (в ActiveX exe), ценность библиотеки ТСа стремится к нулю. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 14:42 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
авторОни хотят воскресить VB6 также сделать его 64-разрядным. Поддерживаю давно пора запилить такой проект. Я например до сих пор зарабатываю на VB6 деньги, клиенты платят за различные утилиты которые я для них разрабатываю. При этом они ничем не уступают приложениям на С++, а о .NET вообще говорить не стоит. Тормознуто и тяжеловесно. На vb6 сложнейшее MDI приложение запускается за полсекунды, аналог на C# и WinForms будет грузится секунд 10-15 и отвратительно тормозить во время работы. Все таки качественный нативный код ничто не может превзойти! Для примера одна из моих коммерческих программ 2015 года на VB6. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 15:09 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
ATM-TURBO 2Зачем они это делают, они как-то объясняют? VB6 единственный в своем роде, он COM (ActiveX)-ориентированный и других таких нет и не будет.Убедительно. ATM-TURBO 2Они хотят воскресить VB6 также сделать его 64-разрядным. Добавить функционал рантайм и т.п. Они хотят переписать рантайм и компилятор? А насчет IDE какие у них мысли? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 15:12 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
EoltДля примера одна из моих коммерческих программ 2015 года на VB6. Симпатишно. :) Верхнюю фигню (забыл как называется, из 2007 офиса расползлась) сам делал или готовая? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 15:16 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
ATM-TURBO 2, Кстати, а что не так с разделяемыми данными в ActiveX exe? Я писал многопоточную прогу этим способом, и не помню никаких проблем. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 15:20 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
Antonariy, Риббон это называется. Очень удобная штука когда к ней привыкаешь. С ней можно даже на виндовых планшетах пальцами работать. Я себе купил комплект компонентов от http://www.codejock.com, дороговато конечно, но если делать коммерческие проекты затраты быстро окупаются. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 15:20 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
Вот еще пример, системная утилита для редактирования памяти RFID-тегов, я тут пытался реализовать черно-белый дизайн в стиле VS2012. А в центре многострадальный VB HEX-контрол, который на куче сайтов валяется в исходниках. В общем как среда разработки VB6 еще пока живой, на нем можно делать современные приложения с удобным GUI. Для меня важно, что в итоге получаются маленькие (по-сравнению с .NET) нативные приложения, с очень высокой скоростью работы и минимум потребляемой памяти. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 15:41 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
EoltА в центре многострадальный VB HEX-контрол, который на куче сайтов валяется в исходниках.Скролл-бары страшные, из стилистики выбиваются. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 15:46 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
Antonariy, Они хотят переписать рантайм и компилятор? А насчет IDE какие у них мысли? Планируют полностью переписать все. Но пока работают над компилятором. Читай. Кстати, а что не так с разделяемыми данными в ActiveX exe? Я писал многопоточную прогу этим способом, и не помню никаких проблем. Покажи как ты это делал. К примеру общий массив данных для работы. Вот тебе пример отрисовки фрактала Julia в другом потоке, массив разделяется между двумя потоками и один туда спокойно пишет другой читает без проблем. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 16:55 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
ATM-TURBO 2 Планируют полностью переписать все.Передай им от меня ценный совет: пусть не делают IDE, лучше чем дотнетовкая все равно не сделают. В дотнетовскую IDE можно встроить ЛЮБОЙ язык, хоть BrainFuck, с поддержкой подсветки, интеллисенсом и прочими плюшками, о которых шестерка может только мечтать. Это будет в разы быстрее, чем пилить с нуля свой интерфейс. А сам рантайм и компилятор можно будет распространять через NuGet. Установил студию, ввел команду, все необходимое подкачалось из репозитария и запилилось в IDE - красота! Такой проект я бы поддержал. Хотя бы морально :) ATM-TURBO 2Покажи как ты это делал.Не могу показать, исходников не сохранилось, могу рассказать. Я просто добавлял ссылку на запущенный экземпляр в ROT, делал GetObject из экземпляра-потока и юзал публичную объектную модель. Таким образом как бы выходит, что данные фактически не являются разделяемыми, в них пишет и читает единственный основной поток (который в ROT), а прочие потоки лишь запрашивают/отдают ему данные. Я не уверен, что все происходит буквально так, как я описал, но ошибок, связанных с одновременным доступом к разделяемым данным, я ни разу не выхватывал. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 17:27 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
ATM-TURBO 2Вот тебе пример отрисовки фрактала Julia в другом потокеНе пашет, ругается на TlsAlloc ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 17:31 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
Antonariy, Запускай EXE. Если хочешь сам скомпилировать то используй tlb по ссылке в первом посте. Также я немного ошибся в этом коде разделяется не массив а группа переменных. В ActiveX EXE такой функционал очень сложно сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 17:33 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
В архиве нет exe. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 17:38 |
|
Многопоточность на VB6.
|
|||
---|---|---|---|
#18+
ATM-TURBO 2В ActiveX EXE такой функционал очень сложно сделать.Хорошо, что я этого не знал :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2015, 17:39 |
|
|
start [/forum/topic.php?fid=60&fpage=16&tid=2155298]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
150ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 256ms |
0 / 0 |