Russian Qt Forum
Ноябрь 22, 2024, 12:22
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Разное
>
Говорилка
>
Igors, это ты? :)
Страниц:
1
...
7
8
[
9
]
10
11
...
17
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Igors, это ты? :) (Прочитано 132099 раз)
_Bers
Бывалый
Offline
Сообщений: 486
Re: Igors, это ты? :)
«
Ответ #120 :
Сентябрь 04, 2018, 18:51 »
Цитата: Авварон от Сентябрь 04, 2018, 17:19
Кстати _Bers спалился что не опускался на уровень еполла и не писал сервак решающий "проблему 10к"
Авварон в курсе, как устроен епулл изнутри?
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Igors, это ты? :)
«
Ответ #121 :
Сентябрь 04, 2018, 18:53 »
Цитата: _Bers от Сентябрь 04, 2018, 18:43
которые реализуются за счет многопоточки. Карл.
Эээээ, нет.
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Igors, это ты? :)
«
Ответ #122 :
Сентябрь 04, 2018, 18:57 »
Цитата: _Bers от Сентябрь 04, 2018, 18:49
самолеты нужны, что бы летать.
у них у всех одинаковая задача.
Но кутред - это шаттл. То что что у него есть крылья (слово тред в названии) не делает его самолетом. Это вы хотите на шаттле в нью-йорк летать, а он нужен чтобы в космос.
Цитата: _Bers от Сентябрь 04, 2018, 18:49
с std::thread всякие кутешные сокеты начнут лагать.
Правильно, потому для
нормальной
работы сокетов нужен epoll
Цитата: _Bers от Сентябрь 04, 2018, 18:49
а что там было в бородатых - не суть важно.
Вообще-то важно. Вас пошлют на три буквы (перестанут юзать ваш фреймворк) те, кому вы сломаете код, убрав run из треда.
Цитата: _Bers от Сентябрь 04, 2018, 18:49
та же ася например, не выносит моск своим эвентлупом.
он вообще упрятан так, что простому смертному о нем даже знать не обязательно.
Ну да, лапшичный код из лямд горааздо лучше эвентлупа.
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Igors, это ты? :)
«
Ответ #123 :
Сентябрь 04, 2018, 18:58 »
Цитата: _Bers от Сентябрь 04, 2018, 18:51
Цитата: Авварон от Сентябрь 04, 2018, 17:19
Кстати _Bers спалился что не опускался на уровень еполла и не писал сервак решающий "проблему 10к"
Авварон в курсе, как устроен епулл изнутри?
Да, поток засыпает на системном вызове, передавая управление ядру.
В ядре происходит событие о сокете, тред пробуждает ядро.
Тут стоит добавить, что планировщик скорее всего догадывается, что тред, спящий на епулле не надо будить.
А вы думали там внутри эвентлуп в юзерспейсе как в азио? Ооок.
Записан
_Bers
Бывалый
Offline
Сообщений: 486
Re: Igors, это ты? :)
«
Ответ #124 :
Сентябрь 04, 2018, 19:12 »
Цитата: Igors от Сентябрь 04, 2018, 14:08
Можете взять мое, или просто печатать в консоль.
просто печать в консоль см. выше.
Цитата: Igors от Сентябрь 04, 2018, 14:08
В Qt для этого есть удобный механизм, а в std - ни кола, ни двора.
ещё std не умеет окошки рисовать.
вы вообще осознаете, что и с чем сравниваете?
Цитата: Igors от Сентябрь 04, 2018, 14:08
Наоборот, std-шный стиль запуска выглядит "каменным веком" - обязует заботиться обо всем самому.
да все тоже самое практически.
только сигналы не нужны.
пихай коллбек, который будет отрисовывать прогресс.
вернет фальш - копирование завершиться.
вот такой дизайн вымораживает:
Код:
fc->moveToThread(&mThread);
перевожу на русский: "сношай меня в отдельном треде"
вот сколько всяких моделей (винапи, сдл, позикс, etc)
до такого бреда только кутя додумалась.
Записан
_Bers
Бывалый
Offline
Сообщений: 486
Re: Igors, это ты? :)
«
Ответ #125 :
Сентябрь 04, 2018, 19:14 »
Цитата: Авварон от Сентябрь 04, 2018, 18:53
Цитата: _Bers от Сентябрь 04, 2018, 18:43
которые реализуются за счет многопоточки. Карл.
Эээээ, нет.
а ещё земля плоская, Карл.
Записан
_Bers
Бывалый
Offline
Сообщений: 486
Re: Igors, это ты? :)
«
Ответ #126 :
Сентябрь 04, 2018, 19:24 »
Цитата: Авварон от Сентябрь 04, 2018, 18:57
Но кутред - это шаттл. То что что у него есть крылья (слово тред в названии) не делает его самолетом. Это вы хотите на шаттле в нью-йорк летать, а он нужен чтобы в космос.
нет. шаттл. это шаттл. а тред - это тред. если тред называют тредом, значит он должен вести себя как тред.
моральные люди не называют шаттл самолетом, что бы потом возвражать: "но это же не самолет, это шаттл"
Цитата: Авварон от Сентябрь 04, 2018, 18:57
Правильно, потому для
нормальной
работы сокетов нужен epoll
глубоко фиолетовый фактор.
даже на голом винапи не нужно заморачиваться на таких деталях.
даже на голимой куте не нужно об этом думать.
даже с её унылыми тредами.
Цитата: _Bers от Сентябрь 04, 2018, 18:49
а что там было в бородатых - не суть важно.
Цитата: Авварон от Сентябрь 04, 2018, 18:57
Вообще-то важно. Вас пошлют на три буквы (перестанут юзать ваш фреймворк) те, кому вы сломаете код, убрав run из треда.
я и не предлагал убирать этот костыль.
я предложил, что бы сокеты бегали в любых тредах,
хоть на winapi его создай.
без необходимости крутить там эвентлуп в ручную.
и не нужно загонять туфту про всякие епулы
пример годного дизайна - ася.
там вообще ни про какой эвентлуп ничего знать не нужно.
Цитата: Авварон от Сентябрь 04, 2018, 18:57
Ну да, лапшичный код из лямд горааздо лучше эвентлупа.
лапшичный
код из коллбеков
- типичное,
широко распространенное явление.
в вашей горячо любимой куте занимает центральную тему.
Записан
_Bers
Бывалый
Offline
Сообщений: 486
Re: Igors, это ты? :)
«
Ответ #127 :
Сентябрь 04, 2018, 19:26 »
Цитата: Авварон от Сентябрь 04, 2018, 18:58
Да, поток засыпает на системном вызове, передавая управление ядру.
и о боже, это и есть многопоточка, Карл!
Цитата: Авварон от Сентябрь 04, 2018, 18:58
А вы думали там внутри эвентлуп в юзерспейсе как в азио? Ооок.
сам придумал - сам ответил. сам оокнул.
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Igors, это ты? :)
«
Ответ #128 :
Сентябрь 04, 2018, 19:48 »
Цитата: _Bers от Сентябрь 04, 2018, 19:24
пример годного дизайна - ася.
Пример хренового дизайна, вообще-то.
Записан
Old
Джедай : наставник для всех
Offline
Сообщений: 4350
Re: Igors, это ты? :)
«
Ответ #129 :
Сентябрь 04, 2018, 19:48 »
Цитата: _Bers от Сентябрь 04, 2018, 18:42
вы осознаете, что противоречите здравому смыслу?
Вовсе нет. Ассинхронка не имеет ничего общего с многопоточкой. И никогда с ее помощью не реализовалась.
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Igors, это ты? :)
«
Ответ #130 :
Сентябрь 04, 2018, 19:51 »
Цитата: _Bers от Сентябрь 04, 2018, 19:26
и о боже, это и есть многопоточка, Карл!
Юзерский поток тут один (как и процесс).
То, что ядро работает в другом процессе нас волновать как бы не должно.
Так можно сказать, что любое приложение, юзающее системный вызов (read, например), многопоточно.
Записан
ssoft
Программист
Offline
Сообщений: 584
Re: Igors, это ты? :)
«
Ответ #131 :
Сентябрь 04, 2018, 21:07 »
Цитата: _Bers от Сентябрь 04, 2018, 18:42
Цитата: Old от Сентябрь 04, 2018, 06:44
Цитата: _Bers от Сентябрь 04, 2018, 03:21
а асинхронный ввод/вывод конечно же реализуется не на многопоточке, да?
Нет. Асинхронка может работать и в одном потоке.
вы осознаете, что противоречите здравому смыслу?
Асинхронность и многопоточность никак не связаны друг с другом. Обычно говорят об их ортогональности.
Программа может работать в их любом сочетании:
Асинхронно однопоточно
Синхронно однопоточно
Асинхронно многопоточно
Синхронно многопоточно
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Igors, это ты? :)
«
Ответ #132 :
Сентябрь 05, 2018, 06:04 »
Цитата: _Bers от Сентябрь 04, 2018, 19:12
да все тоже самое практически.
только сигналы не нужны.
пихай коллбек, который будет отрисовывать прогресс.
вернет фальш - копирование завершиться.
Вы что, правда думаете что можно вот так, не снимая грязных тапок, выполнять код другой нитки?
Цитата: _Bers от Сентябрь 04, 2018, 19:12
вот такой дизайн вымораживает:
Код:
fc->moveToThread(&mThread);
перевожу на русский: "сношай меня в отдельном треде"
вот сколько всяких моделей (винапи, сдл, позикс, etc)
до такого бреда только кутя додумалась.
Ну вот зачем бросаться такими заявлениями если, как все уже видели, ответить за них Вам совершенно нечем? Внимательное изучение архитектуры Qt классов даст намного больше для понимания плюсов чем бестолковое всасывание синтаксического сахара std.
Что плохого Вы видите в том что объекты имеют принадлежность к ниткам (их eventLoop'ам)? Это как-то не укладывается в Ваши теперешние понятия? Так может их-то и надо расширить?
Ведь "детский лепет" (мягко говоря) с callback'ами просто неудобно слушать. У меня вообще впечатление что пока Вы рады "запуску нитки", а с остальными вещами еще и не сталкивались.
Цитата: Авварон от Сентябрь 04, 2018, 17:13
Третий раз на пишу - на момент написания QThread другого способа НЕ БЫЛО, а ваш хваленый стд ни тредов не имел, ни анордеред мапы.
Аналог std::function написать было нельзя потому что компиляторы не умели в шаблоны нормально.
Не надо "оправдываться". Что изменилось что std там что-то "заимел"? Серьезные вещи не решаются цыганщиной типа std::function, нужна глубоко продуманная архитектура, взаимодействие классов. В Qt все это есть, а в std нет и не было, то так - какой ф-цией поудобнее тыцнуть, там-сям строку сэкономить. Мелкотемье/мелкочленье.
Записан
Old
Джедай : наставник для всех
Offline
Сообщений: 4350
Re: Igors, это ты? :)
«
Ответ #133 :
Сентябрь 05, 2018, 09:33 »
Цитата: Igors от Сентябрь 05, 2018, 06:04
В Qt все это есть, а в std нет и не было
Более того и не будет никогда. Потому что std это стандартная библиотека C++, которая не должна диктовать разработчику как ему взаимодействовать между нитками. Она предоставляет ему нижний уровень, на котором разработчик может реализовать удобные для него и задачи механизмы взаимодействия.
А высокоуровневые механизмы уже реализуются в отдельных библиотеках, построенных на std. Для тех кто не может сам написать удобные и эффективные механизмы, существует множество сторонних библиотек (asio одна из них), в них есть все необходимое.
Записан
_Bers
Бывалый
Offline
Сообщений: 486
Re: Igors, это ты? :)
«
Ответ #134 :
Ноябрь 29, 2018, 11:16 »
Цитата: ssoft от Сентябрь 04, 2018, 21:07
Цитата: _Bers от Сентябрь 04, 2018, 18:42
Цитата: Old от Сентябрь 04, 2018, 06:44
Цитата: _Bers от Сентябрь 04, 2018, 03:21
а асинхронный ввод/вывод конечно же реализуется не на многопоточке, да?
Нет. Асинхронка может работать и в одном потоке.
вы осознаете, что противоречите здравому смыслу?
Асинхронность и многопоточность никак не связаны друг с другом. Обычно говорят об их ортогональности.
Программа может работать в их любом сочетании:
Асинхронно однопоточно
Синхронно однопоточно
Асинхронно многопоточно
Синхронно многопоточно
у них дизайн одинаковый.
простой вопрос:
в чем принципиальное различие между стилями программирования:
"асинхронным однопоточным" и "синхронным многопоточным"?
простой ответ:
принципиальной разницы не существует.
меня удивляет, что находятся персонажи, которые этого не догоняют.
и начинают нести всякий бред про "асинхронку в одном потоке, и epoll, который пинает евент луп"
учитывая, что система, о боже! однопоточная, эвент луп у них, наверное,
в сферическом вакууме крутиццо.
Записан
Страниц:
1
...
7
8
[
9
]
10
11
...
17
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
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 сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...