Anonymous Quiz
    9%
    Race
      
    16%
    Mutex
      
    66%
    Wait
      
    9%
    Sync
      
    💊5
  Anonymous Quiz
    19%
    Буферизированный (Buffered)
      
    64%
    Небуферизированный (Unbuffered)
      
    14%
    Закрытый (Closed)
      
    4%
    Открытый (Open)
      
    👍1
  Стандартный map небезопасен для многопоточного доступа. Используйте синхронизацию или специальные структуры данных.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥5
  Anonymous Quiz
    75%
    go get
      
    21%
    go install
      
    2%
    go build
      
    1%
    go run
      
    👍2
  Anonymous Quiz
    12%
    Libraries
      
    60%
    Modules
      
    12%
    Commands
      
    16%
    Applications
      
    🔥1
  Каналы потокобезопасны для отправки и получения данных, но передаваемые объекты должны быть неизменяемыми для предотвращения гонок.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥2👍1
  Anonymous Quiz
    41%
    net
      
    56%
    http
      
    3%
    web
      
    0%
    server
      
    💊11👍3🔥1
  - Система может распределить память с использованием приоритетов процессов или заставить один процесс ожидать.
2. Виртуальная память:
- Использование swap-файла для временного расширения доступной памяти.
3. Ограничение ресурсов:
- Применение cgroups (в Linux) для ограничения использования памяти процессами.
4. Очередь ожидания:
- Организация очереди для синхронизации доступа между процессами.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍3🔥2
  Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍4❤1🔥1
  - Нет классов, используется композиция через структуры и методы.
- Полиморфизм достигается с помощью интерфейсов.
- Наследования нет, встраивание заменяет его.
2. C#:
- Полноценное ООП: классы, наследование, абстракция, интерфейсы.
- Поддержка модификаторов доступа (public, private, protected).
- Разработано для объектно-ориентированной модели с полной поддержкой инкапсуляции и полиморфизма.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍5🔥3
  - Структуры заменяют классы и служат для хранения данных.
2. Методы:
- Методы определяются отдельно и привязываются к структурам.
3. Интерфейсы:
- Полиморфизм реализуется через интерфейсы, задающие набор методов.
4. Встраивание:
- Структуры могут встраивать другие структуры для наследования поведения.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍2❤1🔥1
  2. Каналы для организации потокобезопасного взаимодействия.
3. WaitGroup для ожидания завершения нескольких горутин.
4. Атомарные операции для управления простыми данными.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍3🔥3
  - Встраивание дает доступ к методам встроенной структуры, но не создает иерархии.
2. Избегание жесткой привязки:
- Код становится более модульным, без строгой зависимости от базового типа.
3. Композиция вместо наследования:
- Go следует принципу композиции, что упрощает тестирование и повторное использование.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥4
  - Подходят для обобщения кода, работающего с разными типами, реализующими определенные методы.
2. Дженерики (Go 1.18+):
- Позволяют создавать функции и структуры с параметризованными типами.
3. Композиция функций:
- Использование функций высшего порядка для обработки различных данных.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥5👍1
  При возникновении паники функция defer откладывает выполнение восстановления до выхода из текущей функции, а recover перехватывает ошибку, предотвращая завершение программы. Это полезно для логирования ошибок и безопасного завершения работы.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍1🔥1
  - Основной контекст, используемый как корень.
2. context.WithCancel:
- Позволяет отменить выполнение всех дочерних контекстов.
3. context.WithTimeout:
- Устанавливает лимит времени на выполнение операций.
4. context.WithValue:
- Передача ключ-значений между горутинами.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥1
  1. Отмена операций:
- С помощью WithCancel можно отменить дочерние контексты при необходимости.
2. Управление временем выполнения:
- Установить тайм-аут или дедлайн для операций с WithTimeout или WithDeadline.
3. Передача данных:
- С WithValue можно передать данные (например, идентификаторы пользователя) между горутинами.
4. Изоляция задач:
- Дочерние контексты изолируют задачи, сохраняя независимость от других операций.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥3
  default выполняется, если ни один из каналов в select не готов. Это предотвращает блокировку горутины, позволяя ей продолжить выполнение программы.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍6
  Anonymous Quiz
    20%
    Интеграционный тест
      
    6%
    Стресс-тест
      
    67%
    Модульный тест
      
    6%
    Системный тест
      
    👍1
  Anonymous Quiz
    3%
    fmt
      
    3%
    os
      
    93%
    testing
      
    1%
    bufio
      
    💊9
  1. Использовать мьютексы для блокировки доступа к карте.
2. Применять потокобезопасные структуры, такие как sync.Map.
3. Организовать доступ через каналы, чтобы исключить одновременные записи.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🤔29💊7🤯3👍1
  