|
0 / 0 / 0
Регистрация: 04.05.2008
Сообщений: 24
|
|
Многопотоковое программирование на VB05.11.2009, 21:43. Показов 1105. Ответов 6
Метки нет (Все метки)
0
|
|
| 05.11.2009, 21:43 | |
|
Ответы с готовыми решениями:
6
Многопотоковое умножение матриц C# Первое многопотоковое приложение Как создать многопотоковое прокси приложение? |
|
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 | |
|
Я конечно могу дико заблуждаться, но по-моему, к каждому процессу прикрепляется по новому экземпляру необходимых библиотек.
|
|
| 16.11.2009, 19:18 | |
|
Помогаю со студенческими работами здесь
7
Многопотоковое приложение - ткнуть пальцем на ошибку Напишите многопотоковое приложение, одновременно выполняющее сортировку одного и того же массива разными способами Напишите многопотоковое приложение, одновременно выполняющее сортировку одного и того же массива разными способами Программирование одномерных массивов. Программирование двумерных массивов. Программирование динамических массивов VBA Выбор кафедры в дальнейшей жизни: прикладное программирование VS системное программирование Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Философия технологии
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 - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|