Библиотеки: FileMappingMT4.dll - страница 2

 
Спасибо. Очень полезный труд.
 

Обширный труд. Полезно. Работает. Может это только у меня, но сжирает постепенно память (странно что только на одной машине).

Делал так.

В инициализации совы nAddress = FileMapCreateViewOfFile(NULL, NameFileMap0, MemorySize);

В деиниц. совы FileMapUnViewOfFile(nAddress);

В сове:

FileMapSimpleWriteString(nAddress, 23, sBufferClaer50);

sBuffer50 = "важное сообщение";

FileMapSimpleWriteString(nAddress, 23, sBuffer50);

 
quickticker:

Обширный труд. Полезно. Работает. Может это только у меня, но сжирает постепенно память (странно что только на одной машине).

В одном из последних билдов МТ4 была проблема с утечками памяти. Говорят, что ликвидировали. Надо проверить на последнем билде.
 
при попытке создать отображение из проекта на VB6 вылетает "overflow". На VB не будет работать или мне надо руки выпрямлять?
 
А как стать зарегистрированным пользователем?
 

Выложена полнофункциональная версия для работы с маппингом + исходные коды. от sergeeva.

 
sergeev:


Выложена полнофункциональная версия для работы с маппингом + исходные коды. от sergeeva.

Нефига себе! Не заметил! Это типа у меня неполнофункциональная?

Посмотрел твой код:

1. Убогий функционал. У меня на пару порядков дружелюбнее. Под стиль MQL4 и до фига разных функций.

2. Нет возможности работать с файлом. У меня можно.

3. Ненадёжная синхронизация на базе MFC. Пользуйся критическими секциями или мьютексами.

4. У тебя один класс на все объекты. У меня на каждый объект свой класс. Вывод - у меня работает быстрее с большим количеством транзакций.

5. Ты так и не решил проблему изменения размера.

6. Даже при включённом ограничении FileMappingMT4.dll по всем параметрам предпочтительнее для использования.

7. Твой проект в 70 кб не может быть более полнофункциональным, чем FileMappingMT4.dll. У меня 1,55 Мб код.

Моё ограничение легко обходится. Вместо нескольких мелких объектов можно создать один большой и обращаться туда по разным адресам или попросить снять ограничение.

Кому нужна высокая скорость, вышлю новую библиотеку SharedMemoryMT4.dll. Она супер-совершенство. Уже 2,5 года ей пользуюсь. До сих пор жалко выкладывать. Это полностью интелектуальная библиотека. Сама знает, что хочет пользователь. Там:

1. Всё, как с обычными переменными. Не надо ничего создавать, чтобы прочитать или записать. Это вызов всего одной функции.

2. Сама понимает, когда надо проецировать, когда - нет. Пользователю об этом не надо задумываться.

3. Память выделяется автоматически. Пользователю об этом тоже не надо думать.

4. Заложено 3 пространства имён (оконное, терминальное, глобальное).

5. В каждом пространстве имён, т.е. в каждой их плоскости, можно создавать свои подпространства имён.

6. 3-х уровневая синхронизация обеспечивает максимальную скрость обращения.

7. Конечно, на каждый объект свой класс.

8. Интерфейс библиотеки такой же, как в MQL4. Всё похоже. Также почти похоже, как в текущей FileMappingMT4.dll. Только в 2 раза меньше функций из-за интелектуальности. См. п.2.

9. Сверхудобнейшая работа со строками. Функции возвращают строки, а не заполняют буфера.

10. Библиотека работает с пользовательскими файлами.

11. Предусмотрена ручная работа без интелекта для ещё более высокой скорости.

Может всё же выложу её, как-нибудь...
 
Zhunko:
sergeev:


Выложена полнофункциональная версия для работы с маппингом + исходные коды. от sergeeva.

Посмотрел твой код:

1. У меня на пару порядков дружелюбнее и до фига разных функций.

На сколько у него больше функций на столько его дружелюбность теряется, так как твой подход -масло масляное.

В моем коде реализована самая главная БАЗА для использования в MQL, - чтение основных типов переменных
А у тебя - 80% функций никто никогда не воспользуется.

4. У тебя один класс на все объекты. У меня на каждый объект свой класс. Вывод - у меня работает быстрее с большим количеством транзакций.

Полнейший бред. Особенно вывод.

У меня сделано в двух вариантах - API, когда передается хендл и в виде объекта на одно отображение, когда хендл хранится в объекте.

7. Твой проект в 70 кб не может быть более полнофункциональным, чем FileMappingMT4.dll. У меня 1,55 Мб код.

1.55 Мб - это не признак ума, а либо быдлокод либо индусский стиль.

 
sergeev:

1. На сколько у него больше функций на столько его дружелюбность теряется, так как твой подход -масло масляное.

2. В моем коде реализована самая главная БАЗА для использования в MQL, - чтение основных типов переменных
А у тебя - 80% функций никто никогда не воспользуется.

3. Полнейший бред. Особенно вывод.

У меня сделано в двух вариантах - API, когда передается хендл и в виде объекта на одно отображение, когда хендл хранится в объекте.

4. 1.55 Мб - это не признак ума, а либо быдлокод либо индусский стиль.

Опять пришёл Сергеев и нагадил :-))

1. У меня предложены все возможные варианты и пользователю больше не надо ни о чём думать. Смотри в MSDN. Миллионы разнообразных функций WinAPI. Не спроста это?

2. Эту твою БАЗУ мало кто поймёт. Чтобы разобраться в ней надо понимать, что такое маппинг. Зачем пользователя нагружать ненужной ему информацией. Ему надо записать и прочитать. Это всего две функции. Больше ничего не надо. А те, кто понимают, что такое маппинг, пройдут мимо твоего кода. У них и так всё уже есть.

3. А если подумать немного?

4. Очень рад, что в Майкрософте не работают такие "суперспецы", типа Сергеева. А то бы пришлось на ассемблере до сих пор писать  :-))

У меня законченный продукт. У тебя - полуфабрикат для пытливых умов.

 

та ладно тебе дуться.

кому надо, тот и пользуется. твоим, моим, чужим.  Не терпишь здоровой конкуренции? чудак человек...

полуфабрикат для пытливых умов

спасибо за комплимент. именно с такими я и люблю работать.

;)


а как рассудило общество пытливых умов сам и смотри - 800 скачек открытого кода за два года, и 800 скачек закрытого твоего кода за четыре года.

так что открытый код и легкий расширяемый функционал побеждает. пытливые умы сделали свой выбор :) 

---

если я потеснил твой бизнес, тогда пойму негодование. Но что сверху пишешь - даже не интересно читать (фактов никаких). Свою злость оставь и умножай в себе сам.

Будь здоров.

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