Сообщение Re[4]: Мультипроцессный защищенный код от 01.04.2018 22:32
Изменено 01.04.2018 22:37 Barbar1an
Re[4]: Мультипроцессный защищенный код
Здравствуйте, Pavel Dvorkin, Вы писали:
B>>auto d = new CObject ...
PD>Только если переопределить operator new так, чтобы он выделял память в расшаренной области.
тут вот проблема что для своих объектов я могу переопределить new, а если я например возвращаю референс на std::string? и вообще все std классы где будут инициироваться сами и свои потроха? а де попало...
B>>auto d = new CObject ...
PD>Только если переопределить operator new так, чтобы он выделял память в расшаренной области.
тут вот проблема что для своих объектов я могу переопределить new, а если я например возвращаю референс на std::string? и вообще все std классы где будут инициироваться сами и свои потроха? а де попало...
Re[4]: Мультипроцессный защищенный код
Здравствуйте, Pavel Dvorkin, Вы писали:
B>>auto d = new CObject ...
PD>Только если переопределить operator new так, чтобы он выделял память в расшаренной области.
тут вот проблема что для своих объектов я могу переопределить new, а если я например возвращаю референс на std::string? и вообще все std классы где будут инициироваться сами и свои потроха? а де попало...
или там всё так круто написано что мой аллокатор и все потроха разместит в том пуле который мне нужен?
но всё равно куча рисков сохраняется например
class A
{
std::string Text;
A * operanor new (...
}
autp a = new A
запихнет Text туда же куда и A
а потроха Text, (буфер текста) будут в каком пуле?
может проще вообще все XxxxAlloc перехватить и перенаправить на общий пул?
B>>auto d = new CObject ...
PD>Только если переопределить operator new так, чтобы он выделял память в расшаренной области.
тут вот проблема что для своих объектов я могу переопределить new, а если я например возвращаю референс на std::string? и вообще все std классы где будут инициироваться сами и свои потроха? а де попало...
или там всё так круто написано что мой аллокатор и все потроха разместит в том пуле который мне нужен?
но всё равно куча рисков сохраняется например
class A
{
std::string Text;
A * operanor new (...
}
autp a = new A
запихнет Text туда же куда и A
а потроха Text, (буфер текста) будут в каком пуле?
может проще вообще все XxxxAlloc перехватить и перенаправить на общий пул?