Асинхронное и многопоточное программирование в MQL - страница 11

 
Koldun Zloy:

Будущее уже здесь.

В MT есть Eventloop.

Спасибо за содержательный ответ ))
Ну давайте поясняйте рассказывайте, что и где есть.
И как писать асинхронный код с Eventloop штатными средствами?

 
Roman:

Я надеюсь разработчики услышали идею Eventloop, и реализуют её в будущем.

Вас услышали, админ сделал то, что никогда не делал - посетил топик 3 раза в течении часа, это ... это фантастика! - столько внимания мало кому уделяют ;)

то, что Вы не знакомы даже с азами компьютерной грамотности и пытаетесь выдать за свои знания нагугленный материал - это уже всем понятно, ситуация из комичной уже давно перешла в гротеск и приближается к некому фарсу...фух - в душе я поэт?  ... ))), ладно, не о том..


ответьте на вопрос зачем это нужно торговому терминалу?


ЗЫ: эта ветка на тему "Дорогой дедушка мороз!" - тогда, пишем все свои хотелки? - у меня не так много, на этот момент: ув. Админ! закончите обещанную работу по множественному наследованию в классах (или хотя бы в интерфейсах) и добавьте хотя бы пару портированных пакетов машинного обучения - времени с появления в СБ  ALGLIB прошло уже 7 лет, нужно что то новое, чтобы привлечь внимание пользователей и/или обеспечить появление новых статей (не знаю в чем "фокус" - это форум в первой десятке на поисковый запрос в гугл по поводу НС, МО и ВР... - подозреваю, что была проделана колоссальная работа, чтобы получить такие результаты ТИЦ, имхо не стоит сдавать позиции!)

 
76Igor Makanu:
...


ответьте на вопрос зачем это нужно торговому терминалу?

...

Как это зачем? А зачем экскаватору более мощный мотор, чем легковушке? А зачем нужны 220 в розетке, если телефону нужно 3.5 v ? Всегда поражали подобные вопросы. Минималисты всегда будут на задних рядах...

Нужно, чтобы у людей больше возможностей стало. Если кому то не нужно, не значит, что не нужно всем. Мало ли, у кого какие задачи. Все просто. :)

 
Igor Makanu:

Вас услышали, админ сделал то, что никогда не делал - посетил топик 3 раза в течении часа, это ... это фантастика! - столько внимания мало кому уделяют ;)

то, что Вы не знакомы даже с азами компьютерной грамотности и пытаетесь выдать за свои знания нагугленный материал - это уже всем понятно, ситуация из комичной уже давно перешла в гротеск и приближается к некому фарсу...фух - в душе я поэт?  ... ))), ладно, не о том..


ответьте на вопрос зачем это нужно торговому терминалу?


ЗЫ: эта ветка на тему "Дорогой дедушка мороз!" - тогда, пишем все свои хотелки? - у меня не так много, на этот момент: ув. Админ! закончите обещанную работу по множественному наследованию в классах (или хотя бы в интерфейсах) и добавьте хотя бы пару портированных пакетов машинного обучения - времени с появления в СБ  ALGLIB прошло уже 7 лет, нужно что то новое, чтобы привлечь внимание пользователей и/или обеспечить появление новых статей (не знаю в чем "фокус" - это форум в первой десятке на поисковый запрос в гугл по поводу НС, МО и ВР... - подозреваю, что была проделана колоссальная работа, чтобы получить такие результаты ТИЦ, имхо не стоит сдавать позиции!)

Ну да, и асинхронный сервер с Eventloop вы мне написали )))
Ещё раз повторю, я не учился на программиста, но почему то умею писать асинхронные сервера, для своих задач.
Вот вы кичитесь своей квалификацией, а асинхронно не пишите, раз задаёте такие вопросы, зачем?
Писать асинхронный код в одном потоке, а исполнять его в пуле потоков по моему куда эффективнее, чем довольствоваться одним потоком.
И такие вопросы должны в первую очередь интересовать таких как вы, с багажом знаний.
Но наблюдается обратная тенденция, профики сидят на одном потоке ))
Ламеры пишут асинхронно ))

 
Igor Makanu:
...


ответьте на вопрос зачем это нужно торговому терминалу?

...

Я например хочу, чтобы у меня графика работала в одном потоке, а вычисления в другом. Чтобы события интерфейса не тормозили поток вычислений. Для примера...

 
Roman:

Ну да, и асинхронный сервер с Eventloop вы мне написали )))
Ещё раз повторю, я не учился на программиста, но почему то умею писать асинхронные сервера, для своих задач.
Вот вы кичитесь своей квалификацией, а асинхронно не пишите, раз задаёте такие вопросы, зачем?
Писать асинхронный код в одном потоке, а исполнять его в пуле потоков по моему куда эффективнее, чем довольствоваться одним потоком.
И такие вопросы должны в первую очередь интересовать таких как вы, с багажом знаний.
Но наблюдается обратная тенденция, профики сидят на одном потоке ))
Ламеры пишут асинхронно ))

ответьте на вопрос зачем это нужно торговому терминалу?


ЗЫ: еще раз повторюсь, Вы не понимаете, что Ваши примеры использования "нужной фичи" с Python или Java это некие костыльные решения для изначально тормознутых платформ, MQL5 по производительности к почти приблизился  С++ (это очень близко к максимально возможной производительности!), то что будет исполняться в MQL5 в Python  будет исполняться ... ну около в сто раз медленнее! Вы понимаете разницу в 100 раз? на пальцах в MQL5 выполнение 1 сек в  Python  1,5 минуты - используем такой вызов в MQL5 10 раз = 10 сек, используем в Python = 15 минут! - даже не буду тестировать, порядок вычислительных возможностей не сильно изменится

ЗЫЗЫ: зачем нужна такая "нужная фича"? - задачи у терминала совершенно другие, исторически сложилось, что клиент-серверные решения пишутся на Python или Java... но не на С++ - не принципиально, но Ваши все примеры это обработка запросов клиент -сервер! - Вы задом наперед хотите организовать работу терминал - торговый сервер? ))))

ЗЫЗЫЗЫ: я не "кичусь", а Вы за несколько дней обсуждения не соизволили заняться чтением предложенной Вам информации, но пишете регулярно и отвечаете в течении 2-3 минут... когда Вы успеваете изучать новый материал? ))))


Реter Konow:

Я например хочу, чтобы у меня графика работала в одном потоке, а вычисления в другом. Чтобы события интерфейса не тормозили поток вычислений. Для примера...

))) - терминал виноват - он сильно тормознутый? - у него слабые вычислительные возможности?... может причина в чем то другом?  ;)

 
Igor Makanu:

ответьте на вопрос зачем это нужно торговому терминалу?.

...

))) - терминал виноват - он сильно тормознутый? - у него слабые вычислительные возможности?... может причина в чем то другом?  ;)

Поймите, программы MQL5 увеличивают свою сложность и будут аккомулировать новые и новые возможности. Видите ли Вы это, или нет, так будет. И так уже происходит. Графика нужна для визуализации и она может пожирать очень много ресурсов. Чем круче графика, тем больше. Но, дело не только в ней. Может возникнуть еще целый спектр задач требующих мощности. Предлагаете все вычисления связанные с графикой, стратегией, все внутренние и внешние события ставить в одну очередь? Как то странно такое предлагать.

 
Igor Makanu:


Вы различаете последовательное выполнение и асинхронное?
Причём здесь скорость выполнения? Это всем известно о скорости mql
А вы думаете в C++ не пишут асинхронно и многопоточно? ))
И асинхронные библиотеки для С++ просто так были написаны?
Выше в ветке я уже приводил примеры, для чего это нужно терминалу.
И не только терминалу, а тем кто им пользуется!

Причина в том что вы не ставили себе асинхронные задачи!
А тем более пишите и разрабатываете НС, так вам это в первую очередь и должно быть необходимо, вот вам и один из ответов...
Но нет, мы будем довольствоваться одним потоком, в котором mql практически не уступает C++
Нонсенс...
 
Реter Konow:

 Предлагаете все вычисления связанные с графикой, стратегией, все внутренние и внешние события ставить в одну очередь? Как то странно такое предлагать.

мухи отдельно, котлеты отдельно - это истина! даже в программировании! 

для ТС все просто: расчет - торговый запрос - обработка ответа сервера - сопровождение позиции - расчет - торговый запрос - обработка ответа сервера - сопровождение позиции....

если расчет требует много ресурсов, его нужно вынести в отдельный логический модуль (это индикатор? это предварительно рассчитанные данные?  это отдельный поток?(сервисы уже доступны!) ... вариантов много, почитайте как писали игры на 486- там минимум расчетов. все было подготовлено заранее, но  цель  соответствие вычислительных возможностей и задач!)


мне самому близка тема графических интерфейсов, но к сожалению, это визуализация при разработке/ поиске ТС, для работы ТС графические интерфейсы не нужны! - Вы представляете работу серверов YouTube , которые вместо трансляции контента юзеру еще и воспроизводят видео, трафик и ... и пр. графическую информацию на сервере? )))) - зачем? кому?....


Roman:

Выше в ветке я уже приводил примеры, для чего это нужно терминалу. 
ответьте на вопрос зачем это нужно торговому терминалу?
 
Igor Makanu:

мухи отдельно, котлеты отдельно - это истина! даже в программировании! 

для ТС все просто: расчет - торговый запрос - обработка ответа сервера - сопровождение позиции - расчет - торговый запрос - обработка ответа сервера - сопровождение позиции....

если расчет требует много ресурсов, его нужно вынести в отдельный логический модуль (это индикатор? это предварительно рассчитанные данные?  это отдельный поток?(сервисы уже доступны!) ... вариантов много, почитайте как писали игры на 486- там минимум расчетов. все было подготовлено заранее, но  цель  соответствие вычислительных возможностей и задач!)


мне самому близка тема графических интерфейсов, но к сожалению, это визуализация при разработке/ поиске ТС, для работы ТС графические интерфейсы не нужны! - Вы представляете работу серверов YouTube , которые вместо трансляции контента юзеру еще и воспроизводят видео, трафик и ... и пр. графическую информацию на сервере? )))) - зачем? кому?....


ответьте на вопрос зачем это нужно торговому терминалу?

Для поиска, разработки ТС (для некоторых и сама ТС не нужна, Джоржу например не важно какая ТС), достаточно МТ4. О чем тогда говорить? У каждого свои потребности. Одному хорошо в монастыре живется, а другому хочется кататься по всему миру. Короче, этот разговор ни о чем. Это как я буду спрашивать художника зачем ему писать картины, если можно тупо сфоткать натуру. Тупейший разговор, уж извините. ))


Добавлю, что с таким взглядом на жизнь, никогда бы не появились бы такие культурные явления как скейтборд. Ведь это совершенно непрактичный транспорт. Скудность во всем, - вот порождение такого подхода.

Причина обращения: