0 / 0 / 0
Регистрация: 21.11.2010
Сообщений: 81
|
|
Как из одного потока узнать состояние другого потока04.03.2012, 03:07. Показов 5474. Ответов 3
Метки нет Все метки)
(
Подскажите пожалуйста, как из одного потока узнать, что другой поток еще не запущен.
Например, второй поток формируется в классе SoundSignal и имеет название Thrd (public Thread Thrd). Поток формируется в конструкторе этого класса. Создаю глобальную переменную класса SoundSignal sndSignal; Поток запускаю так: sndSignal = new SoundSignal("notify.wav"); // воспроизвести звуковой файл Вопрос такой. Как из основного потока узнать, что поток sndSignal.Thrd пока не запущен? Эта проверку делаю в таймере. Пишу if (!sndSignal.Thrd.IsAlive) ..... Вылетает ошибка: Ссылка на объект не указывает на экземпляр объекта Что делать, подскажите?
0
|
04.03.2012, 03:07 | |
Ответы с готовыми решениями:
3
Как получить данные из другого потока?
Как вывести данные в textbox из другого потока? |
![]() ![]() |
||||||
04.03.2012, 10:32 | ||||||
Наверное показать код. Нет? Телепатов нету. Могу подсказать так:
1
|
0 / 0 / 0
Регистрация: 21.11.2010
Сообщений: 81
|
|||||||||||||||||||||
05.03.2012, 16:40 [ТС] | |||||||||||||||||||||
Casper-SC,
Спасибо что ответили, но проблема та же. Любое упоминание в таймере комбинации sndSignal.Thrd. приводит к ошибке Ссылка на объект не указывает на экземпляр объекта Вот часть кода
Есть кнопка btnWin1_Stop . Нажатие на которую может остановить сигнал, не дожидаясь его полного окончания.
Пишу if (sndSignal.Thrd.IsAlive) btnWin1_Stop.Hide(); // если потока Thrd нет, то не показывать кнопку btnWin1. При запуске вылетает вышеуказанная ошибка. Проверка if sndSignal!=null не помогает Добавлено через 3 часа 32 минуты Хочу добавить, что хотелось бы отслеживать наличия потока не прибегая к глобальным переменным. Хотелось бы сделать класс SoundSignal полностью автономным.
0
|
![]() ![]() |
|
05.03.2012, 19:26 | |
Отладкой пользуешься? Ну пошагово проходы по коду делаешь смотря при этом какие переменные какие значения имеют, например, что вместо ожидаемого имеет null и т.д?
0
|
05.03.2012, 19:26 | |
Помогаю со студенческими работами здесь
4
Parallel.For внутри другого потока, как его завершить
Записать число в начало потока вернувшись с конца потока после записи нескольких элементов... Вывод формы из другого потока
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Опции темы | |
|
Новые блоги и статьи
![]() |
||||
Компиляция C++ с Clang API
NullReferenced 24.03.2025
Компиляторы обычно воспринимаются как черные ящики, которые превращают исходный код в исполняемые файлы. Мы запускаем компилятор командой в терминале, и вуаля — получаем бинарник. Но что если нужно. . .
|
Многопоточное программирование в C#: Класс Thread
UnmanagedCoder 24.03.2025
Когда запускается приложение на компьютере, операционная система создаёт для него процесс - виртуальное адресное пространство. В C# этот процесс изначально получает один поток выполнения — главный. . .
|
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
|
Моки в Java: Сравниваем Mockito, EasyMock, JMockit
Javaican 23.03.2025
Как протестировать класс, который зависит от других сложных компонентов, таких как базы данных, веб-сервисы или другие классы, с которыми и так непросто работать в тестовом окружении? Для этого и. . .
|
Архитектурные паттерны микросервисов: ТОП-10 шаблонов
ArchitectMsa 22.03.2025
Популярность микросервисной архитектуры объясняется множеством важных преимуществ. К примеру, она позволяет командам разработчиков работать независимо друг от друга, используя различные технологии и. . .
|
Оптимизация рендеринга в Unity: Сортировка миллиона спрайтов
GameUnited 22.03.2025
Помните, когда наличие сотни спрайтов в игре приводило к существенному падению производительности? Время таких ограничений уходит в прошлое. Сегодня геймдев сталкивается с задачами совершенно иного. . .
|
Образование и практика
Igor3D 21.03.2025
Добрый день
А вот каково качество/ эффективность ВУЗовского образования? Аналитическая геометрия изучается в первом семестре и считается довольно легким курсом, что вполне справедливо. Ну хорошо,. . .
|
Lazarus. Таблица с объединением ячеек.
Massaraksh7 21.03.2025
Понадобилась представление на экране таблицы с объединёнными ячейками. И не одной, а штук триста, и все разные. На Delphi я использовал для этих целей TStringGrid, и то, кривовато получалось. А в. . .
|
Async/await в Swift: Асинхронное программирование в iOS
mobDevWorks 20.03.2025
Асинхронное программирование долго было одной из самых сложных задач для разработчиков iOS. В течение многих лет мы сражались с замыканиями, диспетчеризацией очередей и обратными вызовами, чтобы. . .
|
Колмогоровская сложность: Приёмы упрощения кода
ArchitectMsa 20.03.2025
Наверное, каждый программист хотя бы раз сталкивался с кодом, который напоминает запутанный лабиринт — чем дальше в него погружаешься, тем сложнее найти выход. И когда мы говорим о сложности кода, мы. . .
|