AFAIK, this will technically be an atomic store on ARM and x86, but I don't think we should depend upon it.

Why not just make it (non-static) `id unique`, so we capture it for all subscriptions, but create a new object per signal?