Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Нужно было передавать огромные объемы (гигабайты) данных. Реализация через данную библиотеку, к сожалению, показала сверх-низкую производительность.
Пришлось полностью переделать, используя исходный набор DLL. Получилось быстро.
К сожалению, FileMapping имеет один существенный минус. Если дочернее приложение (считывающее данные) по какой-то причине корректно (вызов kernel32::UnmapViewOfFile и kernel32::CloseHandle) не завершило свою работу, то "файл" остается висеть в памяти до тех пор, пока не будут закрыты все процессы, откуда было открытие (вызов kernel32::OpenFileMappingW и kernel32::MapViewOfFile). В частности, нельзя поменять его размер - переоткрыть (закрыть и заново открыть).
Не нашел решение проблемы. С данной библиотекой на такую ситуацию нарваться тяжело, т.к. каждое действие в ней начинается с открытия и заканчивается закрытием. Именно с этим связана ее медлительность. Но все равно можно нарваться на данную ошибку. И тогда будет аварийное завершение MQL-программы с таким сообщением.
Почему-то при попытке скомпилировать файл memmap.mq5 получаю ошибки:
Кто-нибудь может мне подсказать что я делаю не так? И как это исправить?
Исходники библиотеки не соответствуют текущим требованиям языка MQL5.
А как-то можно это поправить? Или это нужно исходники все перерабатывать и без автора этого сделать невозможно? Вроде всего 3 ошибки тут компилятор выдал. Было бы здорово, если это можно было бы откорректировать.
А как-то можно это поправить? Или это нужно исходники все перерабатывать и без автора этого сделать невозможно? Вроде всего 3 ошибки тут компилятор выдал. Было бы здорово, если это можно было бы откорректировать.
А вот я уже сам подправил код. Кому нужно можете использовать. С ним эксперт компилируется успешно.
Я добавил вот это, начиная с 251 строки: