Russian Qt Forum
Ноябрь 23, 2024, 03:26
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Многопоточное программирование, процессы
>
Процесс замерзает при работе интерфейса
Страниц:
1
2
3
[
4
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Процесс замерзает при работе интерфейса (Прочитано 23036 раз)
Old
Джедай : наставник для всех
Offline
Сообщений: 4350
Re: Процесс замерзает при работе интерфейса
«
Ответ #45 :
Ноябрь 15, 2014, 18:59 »
Цитата: Гурман от Ноябрь 15, 2014, 18:20
Нифига!
Странно вы читает.
Я не большой знаток английского, но эту фразу перевел бы так:
Цитировать
Begins execution
of the thread by calling run()
Начинает выполнение нить в которой выполняется run.
А про разрушение нити говорится здесь:
Цитировать
Returning from this method will end the execution of the thread.
Записан
Гурман
Гуру общения
Offline
Сообщений: 1442
Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12
Re: Процесс замерзает при работе интерфейса
«
Ответ #46 :
Ноябрь 15, 2014, 19:08 »
Цитата: Old от Ноябрь 15, 2014, 18:59
Цитата: Гурман от Ноябрь 15, 2014, 18:20
Нифига!
Странно вы читает.
Я не большой знаток английского, но эту фразу перевел бы так:
Цитировать
Begins execution
of the thread by calling run()
Начинает выполнение нить в которой выполняется run.
А про разрушение нити говорится здесь:
Цитировать
Returning from this method will end the execution of the thread.
А я знаток. На самом деле. Английский начал учить в 7 лет. На последней работе выпускал техническую документацию на своё же ПО на английском языке для экспорта, переводчик только помогала переварить объемы, несколько сотен страниц. Как эксперт гарантирую - фраза "Begins execution of the thread by calling run()" переводится так: "Начинает выполнение нити вызывая run()" и никак иначе. Фраза "Returning from this method will end the execution of the thread." переводится однозначно "Возврат из этого метода
закончит выполнение
нити". Про
разрушение
(destruction, severance) ни слова.
«
Последнее редактирование: Ноябрь 15, 2014, 19:10 от Гурман
»
Записан
2^7-1 == 127, задумайтесь...
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Re: Процесс замерзает при работе интерфейса
«
Ответ #47 :
Ноябрь 15, 2014, 19:56 »
Цитата: Гурман
Проблема была в том, что в документации QThread не указано, что каждый последовательный запуск создает новую нить, с новым ID, а не использует предыдущую.
Эмм.. если поток в данный момент есть "is running" то QThread::start() ничего не создаст.
PS: Тред не читал и не вникал об чем спор.
PS: И прежде чем выдвигать какие-то гипотезы о том что так оно работает или не так - возьмите и посмотрите сорцы (обращаюсь ко всем, так, к слову, чтобы не разводить тонны флуда).
Записан
ArchLinux x86_64 / Win10 64 bit
Гурман
Гуру общения
Offline
Сообщений: 1442
Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12
Re: Процесс замерзает при работе интерфейса
«
Ответ #48 :
Ноябрь 15, 2014, 20:07 »
Цитата: kuzulis от Ноябрь 15, 2014, 19:56
Цитата: Гурман
Проблема была в том, что в документации QThread не указано, что каждый последовательный запуск создает новую нить, с новым ID, а не использует предыдущую.
Эмм.. если поток в данный момент есть "is running" то QThread::start() ничего не создаст.
Так нигде и не написано, что start() что-либо создает. Наоборот, написано, что он
начинает выполнение
, что подразумевает выполнение созданного ранее. Но фактически, если нить не выполняется, то start() создаёт новую.
«
Последнее редактирование: Ноябрь 15, 2014, 20:26 от Гурман
»
Записан
2^7-1 == 127, задумайтесь...
Страниц:
1
2
3
[
4
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...