Подсчет ссылок в QSharedMemory
Подскажите пожалуйста, где именно в исходниках QT я могу найти реализацию подсчета ссылок для разделяемой памяти QSharedMemory? Хотелось бы получить файл и строку.
У самого не получается найти.
Ответы (1 шт):
Вам нужно смотреть системно зависимую реализацию интерфейса класса QSharedMemoryPrivate из /qt/qtbase/src/corelib/kernel/qsharedmemory_p.h, конкретно функции attach.
Под Linux используется функция shmat, в которой инкрементируется счетчик shm_nattch "подстыковываний сегмента разделяемой памяти shmid к адресному пространству вызывающего процесса". Смотрите qsharedmemory_systemv.cpp.
Под Windows нужно смотреть qsharedmemory_win.cpp. Там используется библиотека memoryapi.h
MapViewOfFile.