Блог сурового челябинского программиста: глубокий взгляд на C++ и открытые технологии Samolisov.blogspot.com — это персональный блог, созданный программистом из Челябинск...
Samolisov.blogspot.com — это персональный блог, созданный программистом из Челябинска, который позиционирует себя как «суровый» и увлечённый высокотехнологичными вопросами разработки ПО. На сайте представлены технические статьи, посвящённые сложным аспектам программирования, особенно в языках C++ и Java, а также опыту участия в крупных open-source проектах.
Сайт ориентирован на опытных разработчиков, системных архитекторов и инженеров, интересующихся низкоуровневыми аспектами программирования. Основной фокус — на C++, управлении памятью, особенностях компиляторов MSVC (например, предупреждение C4291), а также на проектах с открытым исходным кодом.
В одном из последних материалов автор подробно разбирает проблему несоответствия операторов new и delete в C++, когда используется пользовательский аллокатор. Он объясняет, почему при возникновении исключения в конструкторе может произойти утечка памяти, и как компилятор MSVC предупреждает об этом через warning C4291. Особое внимание уделяется реализации класс-специфичных функций выделения памяти (placement allocation functions) и необходимости их корректного сопровождения соответствующим operator delete.
Автор делится личным достижением — своим первым принятым вкладом в проект Eclipse OpenJ9. Это JVM с открытым исходным кодом, построенная на базе OpenJDK и библиотеки OMR (Open Microservice Runtime). Проект OMR предоставляет кросс-платформенные компоненты для создания сред исполнения для различных языков программирования.
Блог также упоминает другие продукты IBM, открытые для сообщества:
Таким образом, блог не просто рассказывает о технических деталях, но и демонстрирует реальный опыт участия в крупных open-source проектах, что добавляет ему авторитетности среди IT-профессионалов.
В тексте сайта нет указаний на электронную почту, телефон или название компании. Контактная информация отсутствует.
Это предупреждение компилятора MSVC, которое возникает, когда для оператора new, принимающего дополнительные аргументы (например, аллокатор), не найден соответствующий оператор delete. В случае исключения в конструкторе объекта память не будет освобождена, что приведёт к утечке.
Потому что при использовании пользовательских функций выделения памяти (placement allocation) необходимо обеспечить корректное освобождение памяти. Если operator delete не определён с той же сигнатурой, что и operator new, компилятор не знает, как освободить память, если конструктор выбросит исключение.
Eclipse OpenJ9 — это JVM с открытым исходным кодом, разработанная на базе OpenJDK и библиотеки OMR. Она предназначена для высокой производительности и низкого потребления памяти, используется в серверных и облачных средах.
OMR (Open Microservice Runtime) — это кросс-платформенная библиотека, содержащая общие компоненты для построения сред исполнения. На её основе реализованы не только JVM, но и платформы для Python, Ruby и других языков.
IBM открыла код таких продуктов, как OpenLiberty (сервер приложений Java EE), WebSphere Liberty Profile и OpenJ9 (JVM). Все они доступны через экосистему Eclipse.
| Posició | Frase | Pàgina | Fragment |
|---|---|---|---|
| 4 | / | ||
| 7 | / | ||
| 8 | / | ||
| 9 | / | ||
| 10 | / | ||
| 18 | / | ||
| 26 | / | ||
| 32 | / | ||
| 33 | / | ||
| 36 | / |
| Posició | Frase | Pàgina | Fragment |
|---|---|---|---|
| 11 | / |