Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 04.05.2008
Сообщений: 24

Многопотоковое программирование на VB

05.11.2009, 21:43. Показов 1105. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Может кто знает как создавать многопотоковые приложения, просветите незнающего. Спасибо заранее.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.11.2009, 21:43
Ответы с готовыми решениями:

Многопотоковое умножение матриц C#
Программа ниже производит умножение двух матриц. Нужно изменить ее, реализовав многопоточность (threads), чтобы каждому умножению строки на...

Первое многопотоковое приложение
Доброго времени суток, Миряне! решил начать осваивать создание многопотоковых приложений, ибо большо смотреть как мой "Hello...

Как создать многопотоковое прокси приложение?
1)Подключаться к прекси ир логин пароль порт каждый отдельный поток 2) открывает урл и находиться там 60 сек 3)повторить п1-п2 без...

6
Hover
07.11.2009, 22:30
А черт его знает. API функция CreateThread вообще работает через раз: при компиляции или запуске ВБ вообще пишет что-то типа недопустимая функция. Предлагаю использовать асмовские длл, там с мультитреадингом никаких проблем нет.
CatsTail
08.11.2009, 22:19
Эпплман, Гуру VB не рекомендует использовать нити в VB... А для чего это может понадобиться?
Hover
09.11.2009, 22:31
В офисных приложениях действительно без мультитреадинга в большинстве случаев можно обойтись, а вот если приходится забредать в область мультимедии, или полусистемных программ (совсем системные программы писать на ВБ не рекомендует жизнь и многие люди), то тут без многопотоковости трудно.
Примеры: браузер, к-й не использует ядро Ослика IE, может использовать мультитреадинг, для одновременной загрузки нескольких компонент страницы, нескольких страниц и т.д. (это не самый удачный пример)
Более характерным примером является обычный видеоплейер, в котором удобно сделать, чтобы один поток воспроизводил звук, а другой видеопоток.
Кроме того потоки можно программно приостанавливать и повторно запускать, поэтому если программе приходится выполнять длительное действие и хочется чтобы была кнопка паузы, то это самое действие можно запустить в отдельном потоке и по нажатию кнопки паузы тормозить его.
Или вот фоновое сохранение результатов работы программы. Тоже иногда полезно вынести в отдельный поток.
Если делается пользовательский элемент управления, нагруженый анимацией и разными эффектами, то чтобы он своей красотой не тормозил всю программу, все анимированные эффекты тоже хорошо бы вынести в отдельный поток, или в несколько потоков.
В общем применения многопотоковости есть. И чаще всего программа либо обходится совсем без многопотоковости, и ее добавление лишь создает лишнюю головную боль, либо без многопотоковости обойтись просто невозможно. Словом многопотоковость приходится использовать в при решении задач повышенной сложности либо особой специфики.
Hover
14.11.2009, 23:37
>Эпплман, Гуру VB не рекомендует использовать нити в VB...
А не рекомендует он их использовать потому, что как программу в VB не организуй, а экземпляр MSVBVM60.DLL будет загружен всего один, и есть риск, что два потока почти одновременно обратятся к одной и той же фынкции в этой преславутой библиотеке. А в этом случае может получится каша, вернее мясо. Т.к. один и тот же экземпляр процедуры с одним набором локальных переменных будет осполняться одновременно в разных точках. Какой будет беспорядок со значениями этих переменных примерно понятно.
0 / 0 / 0
Регистрация: 10.11.2009
Сообщений: 18
15.11.2009, 15:37
почитай http://www.codenet.ru/progr/vbasic/threads.php
- статья Эпплмана

to Termal
А не рекомендует он их использовать потому, что как программу в VB не организуй, а экземпляр MSVBVM60.DLL будет загружен всего один, и есть риск, что два потока почти одновременно обратятся к одной и той же фынкции в этой преславутой библиотеке.

Мне интересно как же вообще рабтает тогда Windows и его пресловуте библиотеки kernel32.dll, user32.dll...?? Ведь куча прграмм использует функции этих библиотек ;-)
0
Hover
16.11.2009, 19:18
Я конечно могу дико заблуждаться, но по-моему, к каждому процессу прикрепляется по новому экземпляру необходимых библиотек.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.11.2009, 19:18
Помогаю со студенческими работами здесь

Многопотоковое приложение - ткнуть пальцем на ошибку
Короче, при запуске приложения стартует таймер, по событию которого создается поток. Далее таймер снова активирует себя и назначает другой...

Напишите многопотоковое приложение, одновременно выполняющее сортировку одного и того же массива разными способами
Напишите многопотоковое приложение, одновременно выполняющее сортировку одного и того же массива разными способами.

Напишите многопотоковое приложение, одновременно выполняющее сортировку одного и того же массива разными способами
Напишите многопотоковое приложение, одновременно выполняющее сортировку одного и того же массива разными способами (убывание, возрастание)....

Программирование одномерных массивов. Программирование двумерных массивов. Программирование динамических массивов VBA
1. Написать процедуру по упорядочению элементов заданного массива В в следующем порядке: сначала идут положитель- ные числа, потом – нули и...

Выбор кафедры в дальнейшей жизни: прикладное программирование VS системное программирование
Сразу извиняюсь что очень не по теме но всё же лучшего форума для этого вопроса я не нашел. Итак я вступаю во взрослую жизнь и давно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru