сообщить из DLL о наличии нового тика другой программе - страница 4

 

Нужен :) только немного не в таком виде и немного для других вещей.

Есть в загашнике файловый враппер на C++ в виде STL контейнера с использованием для доступа именно маппинга.

Охрененная вещь в работе. В частности, по доступу к данным и экономии памяти.

А для общения использую ранее упомянутое WindowMessage, тоже в виде классной и удобной оболочки.

 
TheXpert:

Нужен :) только немного не в таком виде и немного для других вещей.

Есть в загашнике файловый враппер на C++ в виде STL контейнера с использованием для доступа именно маппинга.

Охрененная вещь в работе. В частности, по доступу к данным и экономии памяти.

А для общения использую ранее упомянутое WindowMessage, тоже в виде классной и удобной оболочки.

А можно полюбопытствовать- для каких вещей?

У меня враппер более продвинутый- я не все показал- можно ходить по страницам,

внутри страниц можно брать указатели begin / end и бегать по ним

(приложил интерфейс View посмотреть). 

С итератором хуже- хочешь-не хочешь, но итератор должен вызывать на каждый элемент / переход

к следующему элементу проверки Eof / Bof- а это тормоза.

.

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

.

Насчет HWND_BROADCAST / RegisterWindowMessage не знал, хотел делать энумерацию 

всех окошек с рассылкой избранным окошкам (по тайтлу или классу окна) специального сообщения.

Вот только шутка... в том, что HWND_BROADCAST сам каждый раз делает ту же самую энумерацию :-),

почему SendMessage(HWND_BROADCAST, ...) может неплохо тормозить.

Т.е. для того, чтобы разослать сообщение- HWND_BROADCAST заново сканируется список из сотни окон :-).

 
jartmailru:

А можно полюбопытствовать- для каких вещей?

Да наверное для любых нетривиальных. Например, когда писал просмотрщик для файлов, использовал либку для серфинга по файлу.

В плане разделения доступа вообще вещь незаменимая.

Либка используется в двух немаленьких проектах как альтернатива почти любому доступу к файлам. Все довольны. Есть пару минусов (сбрасывание всех хэндлов при изменении размера файла, из-за чего безобидный std::back_inserter превращается в дико тормозящую вещь...) но если знать, как их обойти, получается очень здорово.

По тестам в худшем случае работает на пару процентов медленнее (прямой доступ) -- за счет оболочки, в большинстве остальных -- быстрее -- за счет кеширования виндой наиболее часто используемых страниц и хорошей оптимизируемости stl кода.

У меня враппер более продвинутый- я не все показал- можно ходить по страницам,

внутри страниц можно брать указатели begin / end и бегать по ним

(приложил интерфейс View посмотреть).

Ага, посмотрел, интересно. Рыбак рыбака... :)

У меня пользователь маппинга как такового вообще не видит. Механизм работы с маппингом полностью скрыт, и это классно.

С итератором хуже- хочешь-не хочешь, но итератор должен вызывать на каждый элемент / переход

к следующему элементу проверки Eof / Bof- а это тормоза.

А вот здесь Вы совсем не правы. Зависит от реализации.