Риски глобального кеша и способы их устранения Проблемы: При параллельном доступе возможны состояния гонки (race conditions) Изменение данных в разных участках программы приводит к непредсказуемому состоянию…
Обзор протоколов прикладного уровня и практический опыт HTTP/HTTPS: базовые протоколы веба для клиент-серверного взаимодействия и REST API FTP/SFTP: обмен файлами; SFTP обеспечивает защищённую передачу поверх SSH…
Риски Dispatchers.Unconfined и сценарий падения Dispatchers.Unconfined — специальный диспетчер корутин, который начинает выполнение в текущем потоке и работает в нём до первой приостановки. Сразу другой поток он не…
Риски и сценарии использования Executors.newCachedThreadPool() определение: пул потоков с динамически изменяемым размером проблема 1: потенциально неограниченное увеличение количества потоков → риск исчерпания…
Способы организации конкурентного выполнения в Python Потоки (threading): обеспечивают выполнение на уровне потоков ОС и особенно полезны в задачах с большим объёмом I/O; однако GIL ограничивает их эффективность при…
Основные проблемы многопоточности в iOS Гонка данных (data race) — несколько потоков одновременно обращаются к общему ресурсу без необходимой синхронизации Взаимоблокировка (deadlock) — потоки удерживают ресурсы и…
область: программирование, ООП, вызовы методов Статическая (compile-time): метод определяется во время компиляции Динамическая (run-time): метод выбирается во время выполнения, например при вызове виртуальных методов…
Типы индексов PostgreSQL и сценарии их применения B-tree: универсальный вариант для равенств и диапазонов Hash: эффективен при точных равенствах, однако имеет ограниченные возможности GIN: подходит для мультивалютных…
буферизированные: обладают ёмкостью и не блокируют операции сразу небуферизированные: отправитель и получатель блокируются до момента согласования каналы с направлением: односторонние, только для отправки или…
Типы очередей (queues) в iOS системные очереди GCD (Dispatch Queues) два типа: serial (последовательные) и concurrent (конкурентные) main queue — последовательная очередь, выполняющаяся в главном потоке UI global…
часть работы с БД, отвечающая за сохранение целостности ACID: четыре ключевых свойства транзакций Atomicity — атомарность: операция выполняется целиком или не выполняется совсем Consistency — согласованность и…
корутина — легковесная единица выполнения, которой управляет CoroutineScope запуск с помощью launch — возвращает Job и подходит для задач, которым не нужен результат запуск посредством async — возвращает Deferred и…