Xray-core/core
yuhan6665 42aea01fb5
Core: Add mutex to injection resolution (#4206)
* Revert "Add RequireFeaturesAsync() that works regardless order of app init"

* Add mutex to injection resolution

- Turns out we already support async DI resolution regardless of feature ordering
Previous code contain a race condition causing some resolution is lost
- Note that the new mutex cover s.pendingResolutions and s.features
but must not cover callbackResolution() due to deadlock
- Refactor some method names and simplify code

* Add OptionalFeatures injection

For example OptionalFeatures() is useful for fakedns module
2024-12-26 12:55:12 +00:00
..
annotations.go
config.go Chore: Fix some spelling errors (#3976) 2024-11-06 10:42:43 -05:00
config.pb.go
config.proto
context.go
context_test.go
core.go v24.12.18 2024-12-18 13:39:35 +00:00
format.go
functions.go
functions_test.go
mocks.go
proto.go
xray.go Core: Add mutex to injection resolution (#4206) 2024-12-26 12:55:12 +00:00
xray_test.go Core: Add mutex to injection resolution (#4206) 2024-12-26 12:55:12 +00:00