HVoid

Полная документация

Введение

HVoid - это профессиональный инструмент для управления асинхронными операциями в Unity. Он позволяет легко:

  • Выполнять задачи в фоновых потоках

  • Работать с главным потоком Unity

  • Отменять операции

  • Отслеживать прогресс задач

  • Запускать корутины из любого потока

Преимущества HVoid:

  • Простота использования (минимальный порог входа)

  • Высокая производительность

  • Безопасная работа с потоками

  • Интеграция с жизненным циклом Unity

Установка

  1. Поместите его в папку Assets/Plugins

  2. Готово! Система автоматически инициализируется

Быстрый старт

Пример 1: Простая фоновая задача

Основные функции

1. Работа с главным потоком

HVoid.Main()

Выполняет код в главном потоке Unity. Обязательно используйте для работы с Unity API.

HVoid.MainAsync()

Выполняет код в главном потоке и возвращает Task для ожидания.

2. Фоновые задачи

HVoid.Background()

Запускает метод в фоновом потоке.

HVoid.Background() с прогрессом

3. Отменяемые задачи

HVoid.CancellableBackground()

Создает задачу, которую можно отменить.

4. Отложенные действия

HVoid.Delayed()

Выполняет действие через указанное время.

Продвинутые сценарии

Пример: Загрузка данных с сервера

Пример: Параллельная обработка

Пример: Генерация мира

Лучшие практики

1. Всегда проверяйте отмену в длительных операциях

2. Минимизируйте вызовы главного потока

Когда что выбирать?

  1. Используйте HVoid.Main() когда:

    • Нужно просто выполнить действие на главном потоке

    • Не важно, когда именно выполнится операция

    • Делаете единичные простые операции

  2. Используйте HVoid.MainAsync() когда:

    • Нужно дождаться завершения операции

    • Работаете с async/await

    • Строите цепочки последовательных операций

    • Требуется гарантия выполнения перед продолжением кода

Производительность

  • Main() немного эффективнее для единичных операций

  • Для групповых операций лучше использовать один вызов MainAsync() вместо нескольких Main()

3. Используйте async/await для цепочек задач

Часто задаваемые вопросы

В: Безопасно ли использовать Unity API в фоновом потоке?

О: Нет! Все операции с Unity API должны выполняться через:

  • HVoid.Main()

  • HVoid.MainAsync()

  • HVoid.MainCoroutine()

В: Как обрабатывать ошибки в фоновых задачах?

csharpCopyDownload

В: Как отменить все задачи при выходе из игры?

О: HVoid автоматически отменяет все задачи при завершении работы приложения.

Заключение

HVoid предоставляет мощные и простые инструменты для работы с асинхронным кодом в Unity. С его помощью вы можете:

  1. Упростить сложную многопоточную логику

  2. Улучшить производительность вашей игры

  3. Создавать плавные и отзывчивые интерфейсы

  4. Легко управлять длительными операциями

  5. Реализовывать сложные сценарии загрузки

Скачать HVoidLib

Для новичков рекомендуется начать с простых примеров из раздела "Быстрый старт", постепенно переходя к более сложным сценариям.

Last updated

Was this helpful?