AmberSignal - Fast, Guarded & Thread-Safe Events View on Asset Store (opens in new tab)

Package details

Latest version
1.2.0
Last updated
First released
Unity version
6000.3.6 or later
Package size
45 KB
Files
43
Favorites
3
Views in the past week
7

Price tracking

Last checked
Tracked since
Lowest recorded
Free on

Keywords

AmberSignal - Fast, Guarded & Thread-Safe Events

by Amberbite (opens in new tab)

No ratings yet

Drop-in replacement for C# Actions & UnityEvents. Zero-allocation invocation, exception-resilient delivery, automatic main thread marshalling. Built-in Signal Profiler. Production-ready event system.

Price Free

Get it free on Asset Store (opens in new tab)

Affiliate link · Purchases support this site

Price history

Last 6 months

USD
Price history for AmberSignal - Fast, Guarded & Thread-Safe Events, 6 months Current Free; lowest Free; highest Free in this period. $0 Jul Aug Sep Oct Nov

Asset preview

1 / 4

AmberSignal - Fast, Guarded & Thread-Safe Events screenshot 1

AmberSignal - Fast, Guarded & Thread-Safe Events screenshot 1

About this asset

Your events shouldn't break your game!

The EventHandling package provides a fast, safe, and Unity-native event system built around Signals. It is designed to replace standard C# Actions , EventHandler or UnityEvent by solving the critical production issues that plague standard event architectures:

Fragility:

Standard events stop invoking if one listener throws an exception (except UnityEvent).

Threading:

Standard events cannot safely update Unity Objects (UI/Gameplay) from background threads.

Garbage:

Standard events often incur hidden allocation costs.

Opacity:

It is nearly impossible to debug who is listening to a standard C# event in the Inspector.

Signals are the solution. They are a drop-in replacement for events that are exception-resilient, thread-safe, and allocation-free on the hot path.

The API mirrors what you already know: +=, -=, .Invoke().

Built-in Signal Profiler lets you inspect your live event system directly in the Editor. See which signals fire, how often, how many listeners they have, and how long they take.

Custom error logging enshures all caught errors are logged in the normal unity console with full caller and inner stacktrace.

Zero-allocation on the hot path. No boxing of value types. Cache-friendly listener storage. Designed for code that runs thousands of times per frame.

Documentation

From the publisher's Asset Store listing.

Technical details

Core

  • Drop-in replacement for C# Action, EventHandler, and UnityEvent
  • Signal (no data) and Signal<T> (typed payload) variants
  • Operator syntax (+=, -=) and method syntax (Subscribe, Unsubscribe, UnsubscribeAll)
  • Exception-resilient: all listeners execute even if one throws
  • Automatic Main Thread marshalling via forceMainThread: true
  • ActionQueue exposed for general-purpose thread-to-main-thread dispatching with phase control (Update, LateUpdate, FixedUpdate) and frame load balancing

Performance

  • Zero GC allocation on invocation
  • No boxing of structs, ints, or enums
  • Cache-friendly listener storage
  • Benchmarked: 10M invocations across 1,000 observers, outperforms EventHandler, UnityEvent, and Observer pattern and matches Action's performance

Debugging

  • Built-in Signal Profiler (Editor-only, zero cost in builds)
  • Live observer counts per signal
  • Detect and debug hot paths
  • Average execution time per signal
  • Benchmark tooling included
  • Custom error logging in Unity console

Compatibility

  • Unity 6+
  • No external dependencies

Compatibility

Render pipelines supported in each Unity version
Unity version Built-in URP HDRP Custom
6000.3.6f1 Compatible Compatible Compatible Compatible

As listed on the Asset Store.