vault backup: 2024-09-01 20:49:54

This commit is contained in:
Struchkov Mark 2024-09-01 20:49:54 +03:00
parent cbd06fa7e4
commit e156bccd0a
No known key found for this signature in database
GPG Key ID: A3F0AC3F0FA52F3C
75 changed files with 161 additions and 153 deletions

View File

@ -24,20 +24,24 @@
"unresolvedLinks": false,
"recentFilesStore": [
{
"filepath": "wiki/zero/00 Разработка.md",
"timestamp": 1725212505883
"filepath": "garden/ru/meta/zero/00 Java разработка.md",
"timestamp": 1725212987896
},
{
"filepath": "garden/ru/dev/java/gc/Garbage Collector.md",
"timestamp": 1725212939342
},
{
"filepath": "garden/ru/index.md",
"timestamp": 1725211577159
"timestamp": 1725212936552
},
{
"filepath": "garden/ru/files/digital-garden.png",
"filepath": "garden/ru/meta/zero/00 Разработка.md",
"timestamp": 1725212879708
},
{
"filepath": "garden/ru/meta/files/digital-garden.png",
"timestamp": 1725211559462
},
{
"filepath": "knowledge/english/Полезные фразы.md",
"timestamp": 1725211104506
}
],
"bookmarkedFileStore": [],

View File

@ -1,16 +1,24 @@
{
"recentFiles": [
{
"basename": "00 Разработка",
"path": "garden/ru/meta/zero/00 Разработка.md"
"basename": "00 Java разработка",
"path": "garden/ru/meta/zero/00 Java разработка.md"
},
{
"basename": "Garbage Collector",
"path": "garden/ru/dev/java/gc/Garbage Collector.md"
},
{
"basename": "index",
"path": "garden/ru/index.md"
},
{
"basename": "00 Разработка",
"path": "garden/ru/meta/zero/00 Разработка.md"
},
{
"basename": "digital-garden",
"path": "garden/ru/files/digital-garden.png"
"path": "garden/ru/meta/files/digital-garden.png"
},
{
"basename": "Полезные фразы",
@ -48,18 +56,10 @@
"basename": "Home",
"path": "Home.md"
},
{
"basename": "Garbage Collector",
"path": "knowledge/dev/java/gc/Garbage Collector.md"
},
{
"basename": "Garbage First",
"path": "knowledge/dev/java/gc/Garbage First.md"
},
{
"basename": "00 Java разработка",
"path": "wiki/zero/00 Java разработка.md"
},
{
"basename": "Скрипты для Git",
"path": "knowledge/dev/Скрипты для Git.md"

View File

@ -6,7 +6,7 @@ date:
- - 2024-04-07
zero-link:
- "[[00 Алгоритмы]]"
- "[[00 Java разработка]]"
- "[[../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Бинарный поиск]]"
linked:

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2024-04-07
zero-link:
- "[[00 Java разработка]]"
- "[[../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
link: https://struchkov.dev/blog/ru/java-debugging-annotation-processor/

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2024-04-07
zero-link:
- "[[00 Java разработка]]"
- "[[../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
link: https://struchkov.dev/blog/ru/multiple-connections-to-h2/

View File

@ -9,7 +9,7 @@ tags:
- зрелость/🌿
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../meta/zero/00 Java разработка|00 Java разработка]]"
parents:
linked:
---

View File

@ -11,8 +11,11 @@ title: Struchkov's Digital Garden
Основная идея цифрового сада — это процесс, а не результат. Здесь можно увидеть черновики мыслей, промежуточные этапы работы над проектами и идеи, которые ещё только ждут своего часа. Всё связано между собой гипер-ссылками, создавая сеть знаний, которую можно изучать и расширять.
![digital-garden](files/digital-garden.png)
![digital-garden](meta/files/digital-garden.png)
## Zero Links
- [Разработка](meta/zero/00%20Разработка.md)
- [Java разработка](meta/zero/00%20Java%20разработка.md)
## Чего стоит избегать
> [!WARNING] DISCLAMER
> Приветствуются комментарии по теме заметки для улучшения и исправления фактических ошибок. Но ==не стоит указывать на грамматические ошибки или опечатки.== В первую очередь это мои заметки, которые можн

View File

Before

Width:  |  Height:  |  Size: 551 KiB

After

Width:  |  Height:  |  Size: 551 KiB

View File

@ -0,0 +1,7 @@
---
tags:
- type/zero-link
parents:
- "[[00 Разработка]]"
---
- [Garbage Collector](gc/Garbage%20Collector.md)

View File

@ -3,3 +3,4 @@ tags:
- type/zero-link
title: Разработка
---
- [Java разработка](00%20Java%20разработка.md)

View File

@ -6,10 +6,10 @@ tags:
date:
- - 2024-03-03
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
- "[[00 Криптография]]"
parents:
linked:
linked:
---
Добавляем зависимость
```xml

View File

@ -4,10 +4,10 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Архитектура JVM]]"
linked:
linked:
---
В JVM есть Class Loader Subsystem, здесь хранится информация о классах. Есть различные Class Loaders.

View File

@ -4,7 +4,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
- "[[Java 8 LTS|java 8]]"

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2023-11-15
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---

View File

@ -4,7 +4,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-07]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---

View File

@ -4,7 +4,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---

View File

@ -4,7 +4,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---

View File

@ -6,7 +6,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---

View File

@ -4,7 +4,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---

View File

@ -4,7 +4,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---

View File

@ -6,7 +6,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
- "[[JDK 17]]"

View File

@ -5,7 +5,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-07]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---
## Изменения
- Появился новый сборщик [Concurrent Mark Sweep](Concurrent%20Mark%20Sweep.md)

View File

@ -5,7 +5,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
- "[[JDK 8]]"

View File

@ -4,7 +4,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---

View File

@ -6,7 +6,7 @@ tags:
date:
- - 2023-11-22
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
- "[[Java Разработка]]"

View File

@ -4,10 +4,10 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[JVM]]"
linked:
linked:
---
## GC
- [Serial](Serial%20GC.md)

View File

@ -4,11 +4,11 @@ tags:
- зрелость/🌱
date: 2023-11-12
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---
Safe Point — это такая точка в выполнении программы, в которой все потоки приложения находятся в известных и устойчивых состояниях, что позволяет [сборщику мусора](Garbage%20Collector.md) безопасно анализировать и изменять структуры данных памяти, такие как куча (heap).
Safe Point — это такая точка в выполнении программы, в которой все потоки приложения находятся в известных и устойчивых состояниях, что позволяет [сборщику мусора](../../../garden/ru/dev/java/gc/Garbage%20Collector.md) безопасно анализировать и изменять структуры данных памяти, такие как куча (heap).
Во время выполнения программы на Java, потоки могут быть остановлены сборщиком мусора, чтобы обеспечить согласованность данных в памяти. Однако останавливать их можно только в определённых местах, которые называются Safe Points. Это необходимо для того, чтобы гарантировать, что потоки не находятся в середине операции, которая может изменять состояние памяти, и для того, чтобы у сборщика мусора была возможность корректно анализировать достижимые объекты и ссылки между ними.

View File

@ -6,9 +6,9 @@ tags:
date:
- - 2024-03-03
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---
JOOQ (Java Object Oriented Querying) — это библиотека для Java, предназначенная для построения SQL-запросов с использованием API, основанного на шаблонах. Она позволяет разработчикам писать типобезопасные SQL-запросы с помощью Java-кода, что облегчает интеграцию базы данных в приложения Java. JOOQ поддерживает большинство реляционных баз данных, включая PostgreSQL, MySQL, Oracle, SQL Server и многие другие.

View File

@ -10,8 +10,8 @@ tags:
date:
- - 2024-03-03
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Java Фреймворки]]"
linked:
linked:
---

View File

@ -4,8 +4,8 @@ tags:
- зрелость/🌱
date: 2023-11-15
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Java Фреймворки]]"
linked:
linked:
---

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2023-11-22
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[00 Hibernate]]"
linked:

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2023-11-22
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Quarkus]]"
linked:

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2023-11-22
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Quarkus]]"
linked:

View File

@ -4,7 +4,7 @@ tags:
- зрелость/🌱
date: "[[2023-10-31]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Quarkus]]"
linked:

View File

@ -4,7 +4,7 @@ tags:
date:
- - 2023-11-20
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Снипеты на Java]]"
linked:

View File

@ -4,10 +4,10 @@ tags:
- зрелость/🌱
date: "[[2023-11-07]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
linked:
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
---
Этот алгоритм пытается собирать мусор в то же время, когда работает приложение, чтобы уменьшить влияние сбора мусора на производительность приложения.

View File

@ -6,9 +6,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked: []
---
Появился в [Java 7](Java%207.md) и использует [Generational Collection](Generational%20Collection.md).

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
- "[[Mark and Sweep]]"
---

View File

@ -4,10 +4,10 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
linked:
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
---
- Появился в [Java 11](Java%2011), но остался в статусе экспериментального
- Вообще не собирает мусор

View File

@ -5,10 +5,10 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
linked:
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
---
Можно сказать, что этот сборщик пришел на замену [CMS](Concurrent%20Mark%20Sweep.md) в [Java 9](Java%209.md). Также, как и остальные сборщики использует подход [Generational Collection](Generational%20Collection.md), однако Heap разделяется не на большие части Young, Old, а на небольшие равные регионы.
@ -30,13 +30,13 @@ linked:
>
> В [[Java 11]] были внесены изменения в обработку больших объектов.
## Minor Collection
Minor сборка обычно происходит, когда eden заполняется. Над [minor](Garbage%20Collector.md#^minor) сборками мусора работают несколько потоков. Но очистка выполняется не на всем поколении, а только на регионах молодого поколения. За счет этого количество [StopTheWorld](StopTheWorld.md) становится больше, но сборка выполняется быстрее и не превышает желаемое время.
Minor сборка обычно происходит, когда eden заполняется. Над [minor](../../../../garden/ru/dev/java/gc/Garbage%20Collector.md#^minor) сборками мусора работают несколько потоков. Но очистка выполняется не на всем поколении, а только на регионах молодого поколения. За счет этого количество [StopTheWorld](StopTheWorld.md) становится больше, но сборка выполняется быстрее и не превышает желаемое время.
## Mixed Collection
Mixed сборка обрабатывает как молодое поколение, так и часть старого поколения. Эта запускается после определенного количества minor сборок.
В G1 существует процесс, называемый Marking Cycle, который работает параллельно с основным приложением и составляет список живых объектов. Он напоминает работу сборщика [CMS](Concurrent%20Mark%20Sweep.md).
- **Initial mark.** Пометка [GC Root](Garbage%20Collector.md#^gcroot) с использованием информации от [minor](Garbage%20Collector.md#^minor) сборок.
- **Initial mark.** Пометка [GC Root](../../../../garden/ru/dev/java/gc/Garbage%20Collector.md#^gcroot) с использованием информации от [minor](../../../../garden/ru/dev/java/gc/Garbage%20Collector.md#^minor) сборок.
- В [Java 10](Java%2010.md) были внедрены улучшения. Параллельная пометка и улучшенное использование ресурсов процессора.
- **Concurrent marking.** Пометка всех живых объектов в heap. Работает в нескольких потоках.
- **Remark.** Дополнительный поиск не учтенных ранее живых объектов. Используется [StopTheWorld](StopTheWorld.md)
@ -76,7 +76,7 @@ G1 копирует объекты из одной или нескольких
- Работает только, когда идет фоновая сборка мусора.
- Сохраняет старое значение поля
- Поддерживается корректность фоновой маркировки
- [SATB](Garbage%20Collector.md#^satb)
- [SATB](../../../../garden/ru/dev/java/gc/Garbage%20Collector.md#^satb)
- Post-barrier
- Поддержка актуальности Remembered Set
- Не срабатывают, когда мы модифицируем указатель из молодого объекта в молодой

View File

@ -4,10 +4,10 @@ tags:
- зрелость/🌱
date: "[[2023-11-07]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
linked:
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
---
Этот алгоритм основан на нескольких идеях.
@ -36,7 +36,7 @@ linked:
Конкретно в Hotspot, если объект большой (1+ mb) он может быть сразу помещен в Old Generation. А новые объекты создаются в области eden, если объект переживает сборку мусора, то он переносится в область s0, если переживает сборку в s0, переносится в s1, после чего переносится в Old Generation.
Если eden заполнен, то выполняется [minor](Garbage%20Collector.md#^minor) сборка мусора.
Если eden заполнен, то выполняется [minor](../../../../garden/ru/dev/java/gc/Garbage%20Collector.md#^minor) сборка мусора.
При сборке только в молодом поколении есть проблема: мы можем удалить объект в молодом поколении, на который ссылаются из старого поколения. В [Serial GC](Serial%20GC.md)/[Parallel GC](Parallel%20GC.md) для решения этой проблемы используют специальную структуру Card Table. При записи ссылки из старого поколения в молодое, в Card Table делается пометка. Эта пометка означает, что в такой-то области старого поколения может быть ссылка на молодое. То есть это не точное знание, а маркер, который говорит нам проверить какую-то область памяти на наличие ссылок.

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-07]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
linked:
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
---
Этот алгоритм пытается разбить задачу сбора мусора на меньшие части, чтобы уменьшить паузы ([StopTheWorld](StopTheWorld.md)), вызванные сбором мусора.

View File

@ -7,7 +7,7 @@ zero-link:
- "[[../../../../garden/ru/meta/zero/00 Разработка]]"
parents:
linked:
- "[[Garbage Collector]]"
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
---
Этот алгоритм является альтернативой [SATB](Snapshot%20at%20the%20beginning%20(SATB).md) и отслеживает изменения, происходящие после начала фазы маркировки.

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-07]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
- "[[Mark and Sweep]]"
---

View File

@ -5,9 +5,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
- "[[Mark and Compact]]"
---

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-07]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
linked:
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
---
Этот алгоритм использует несколько потоков для выполнения сбора мусора, что может ускорить процесс на многоядерных процессорах.

View File

@ -4,10 +4,10 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
linked:
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
---
В отличие от [Parallel GC](Parallel%20GC.md) ([Generational Collection](Generational%20Collection.md), [Copy Collector](Copy%20Collector.md), [Mark and Compact](Mark%20and%20Compact.md), [Parallel Collection](Parallel%20Collection.md)) этот сборщик уже умеет работать в параллельном режиме как с областью Young Generation, так и с областью Old Generation.

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
- "[[Serial GC]]"
- "[[Concurrent Mark Sweep|Concurrent Mark Sweep]]"

View File

@ -5,9 +5,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
- "[[Parallel GC]]"
- "[[Concurrent Mark Sweep|Concurrent Mark Sweep]]"

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
- "[[ZGC]]"
---

View File

@ -4,10 +4,10 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
linked:
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
---
Это временная остановка всех процессов программы для выполнения сборки мусора. При остановке намного проще выполнять сборку мусора.

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-08]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Garbage Collector]]"
- "[[../../../../garden/ru/dev/java/gc/Garbage Collector]]"
linked:
- "[[Shenandoah GC]]"
---

View File

@ -5,10 +5,10 @@ tags:
date:
- - 2023-11-22
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Java Разработка]]"
linked:
linked:
---
JDBC (Java Database Connectivity) — это стандартный API, который определяет, как клиент может получить доступ к базе данных. Вот как он работает:

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2023-11-20
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
- "[[SpringBoot]]"

View File

@ -4,7 +4,7 @@ tags:
date:
- - 2023-11-20
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Снипеты на Java]]"
linked:

View File

@ -4,7 +4,7 @@ tags:
date:
- - 2023-11-20
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Снипеты на Java]]"
linked:

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2023-11-20
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Снипеты на Java]]"
linked:

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2023-11-20
zero-link:
- "[[00 Java разработка]]"
- "[[../../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Снипеты на Java]]"
linked:

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---
# HotSpot JVM
![](Pasted%20image%2020231106101449.png)
@ -20,4 +20,4 @@ linked:
## Executor Engine
## JIT Compiler
### Garbage Collector
![Garbage Collector](Garbage%20Collector.md)
![Garbage Collector](../../../garden/ru/dev/java/gc/Garbage%20Collector.md)

View File

@ -4,7 +4,7 @@ tags:
date:
- - 2024-01-10
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
- "[[JVM]]"

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: 2023-11-15
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---
Лямбда-выражения в Java представляют собой интересную и относительно сложную часть языка, особенно когда речь идет о том, как они работают во время выполнения программы. Вот основные моменты, которые стоит понимать:

View File

@ -5,9 +5,9 @@ tags:
- зрелость/🌱
date: 2023-11-15
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---
Нативные сборки в контексте Java относятся к процессу компиляции Java-приложений в нативный машинный код, специфичный для конкретной операционной системы и архитектуры процессора. Это отличается от традиционного подхода Java, где приложения компилируются в байт-код и выполняются на Java Virtual Machine ([JVM](JVM.md)). Основным инструментом для создания нативных сборок в Java является GraalVM Native Image.
## Плюсы

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2023-11-20
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
- "[[Maven]]"

View File

@ -5,7 +5,7 @@ tags:
date:
- - 2023-11-20
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
article: https://note.struchkov.dev/sravnieniie-enum-v-java/

View File

@ -4,7 +4,7 @@ tags:
date:
- - 2023-11-20
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
article: https://note.struchkov.dev/sravnitie-konstanty-slieva/

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---
# Heap
^heap

View File

@ -4,9 +4,9 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---
- [Архитектура JVM](Архитектура%20JVM.md)
- [Garbage Collector](Garbage%20Collector.md)
- [Garbage Collector](../../../garden/ru/dev/java/gc/Garbage%20Collector.md)

View File

@ -4,10 +4,10 @@ tags:
- зрелость/🌱
date: "[[2023-11-06]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---
Создание объекта за редкими исключениями сопровождается вызовом ключевого слова `new`. Далее происходит так называемая аллокация в памяти, под новый объект выделяется область памяти в [Heap](Структура%20памяти%20Java.md#^heap). Если памяти будет не достаточно, то будет предпринята попытка [сборки мусора](Garbage%20Collector.md). Если и это не поможет, то приложение упадет с исключением.
Создание объекта за редкими исключениями сопровождается вызовом ключевого слова `new`. Далее происходит так называемая аллокация в памяти, под новый объект выделяется область памяти в [Heap](Структура%20памяти%20Java.md#^heap). Если памяти будет не достаточно, то будет предпринята попытка [сборки мусора](../../../garden/ru/dev/java/gc/Garbage%20Collector.md). Если и это не поможет, то приложение упадет с исключением.
В памяти объект хранится в виде заголовков и содержания. Содержание, это то что указывает разработчик, то ради чего существует объект. А заголовки, это техническая мета-информация, которая нужна для правильного функционирования JVM.

View File

@ -4,7 +4,7 @@ tags:
- зрелость/🌱
date: "[[2023-11-09]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[00 Hibernate]]"
linked:

View File

@ -5,10 +5,10 @@ tags:
- зрелость/🌱
date: "[[2023-11-07]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
- "[[Garbage Collector]]"
- "[[../../garden/ru/dev/java/gc/Garbage Collector]]"
---
Так называется процесс выделения памяти под новый объект.

View File

@ -4,7 +4,7 @@ tags:
- зрелость/🌱
date: "[[2023-10-21]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../garden/ru/meta/zero/00 Java разработка]]"
parents:
- "[[Quarkus]]"
linked:

View File

@ -91,7 +91,7 @@ zero-link:
- [ ] Знаешь как устроен стек?
- [ ] Можешь рассказать про пул строк?
- [ ] А есть ли другие пулы?
### [Garbage Collector](Garbage%20Collector.md)
### [Garbage Collector](../../garden/ru/dev/java/gc/Garbage%20Collector.md)
- **Middle**
- [ ] Объясни принципы работы сборщика мусора в Java.
- [ ] Когда объект переносится из одной области хипа в другую, что происходит с областью откуда был перемещен объект?

View File

@ -5,7 +5,7 @@ tags:
- type/zero-link
date: "[[2023-11-09]]"
zero-link:
- "[[00 Java разработка]]"
- "[[../../garden/ru/meta/zero/00 Java разработка]]"
parents:
linked:
linked:
---

View File

@ -1,7 +0,0 @@
---
tags:
- type/zero-link
parents:
- "[[../../garden/ru/meta/zero/00 Разработка]]"
---
- [Garbage Collector](knowledge/dev/java/gc/Garbage%20Collector.md)