|
0 / 0 / 0
Регистрация: 10.01.2015
Сообщений: 8
|
|||||||||||
Работа с консольным приложением через GUI08.11.2016, 22:34. Показов 2858. Ответов 4
Метки нет (Все метки)
Здравствуйте!
Есть элементарное консольное приложение. В начале пишет "Welcome!", реагирует на получение каждой строки, если получает строку "exit", пишет "Exited." и завершает работу.
Что не так и почему? Или такой механизм реализуется через System.IO.Pipes?
0
|
|||||||||||
| 08.11.2016, 22:34 | |
|
Ответы с готовыми решениями:
4
Подскажите с консольным приложением Работа с консольным приложением
|
|
907 / 664 / 318
Регистрация: 23.10.2016
Сообщений: 1,543
|
|||||||||||
| 09.11.2016, 07:29 | |||||||||||
Сообщение было отмечено Kate-sam как решение
Решение
У Вас чтение данных из консоли находится в том же потоке, что и GUI:
1
|
|||||||||||
|
0 / 0 / 0
Регистрация: 10.01.2015
Сообщений: 8
|
|
| 09.11.2016, 09:13 [ТС] | |
|
TopLayer, действительно, спасибо.
А можете объяснить, почему именно такой эффект? Т. е. почему в первом случае поток не создается (?) а во втором - создается? Все дело в том, что sr.ReadLine() оказался внутри другого потока?
0
|
|
|
907 / 664 / 318
Регистрация: 23.10.2016
Сообщений: 1,543
|
|
| 09.11.2016, 14:39 | |
|
Kate-sam, всё всегда создаётся. Тот делегат, который передаёте в BeginInvoke, выполняется в потоке GUI. В этом и смысл BeginInvoke -> потому что элементы формы можно изменять только в потоке GUI. А если вы туда вставляете вызов ReadLine, то он блокирует поток GUI до появления новой строки. Общее правило: все методы в потоке GUI должны быстро выполняться и возвращать управление.
1
|
|
|
0 / 0 / 0
Регистрация: 10.01.2015
Сообщений: 8
|
|
| 09.11.2016, 21:42 [ТС] | |
|
TopLayer, понятно, большое спасибо)
0
|
|
| 09.11.2016, 21:42 | |
|
Помогаю со студенческими работами здесь
5
Работа с другим консольным приложением Проблема с консольным приложением в Qt Общение с консольным приложением Пауза при работе с консольным приложением Сохранение текстового файла консольным приложением Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
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
Использованы. . .
|