diff --git a/README.md b/README.md index d8b1d4e2..7525ad16 100644 --- a/README.md +++ b/README.md @@ -12,8 +12,9 @@ I have over 10 years of experience with Rx, experience in implementing a custom * Frame-based operations, a missing feature in Rx, are especially important in game engines. * Single asynchronous operations should be entirely left to async/await. * Synchronous APIs should not be implemented. +* The Necessity of a subscription list to prevent subscription leaks (similar to a Parallel Debugger) * Backpressure should be left to [IAsyncEnumerable](https://learn.microsoft.com/en-us/dotnet/csharp/asynchronous-programming/generate-consume-asynchronous-stream) and [Channels](https://devblogs.microsoft.com/dotnet/an-introduction-to-system-threading-channels/). -* For distributed processing and transparent queries, there are GraphQL, Kubernetes, Orleans, gRPC, and MagicOnion. +* For distributed processing and transparent queries, there are [GraphQL](https://graphql.org/), [Kubernetes](https://kubernetes.io/), [Orleans](https://learn.microsoft.com/en-us/dotnet/orleans/), [gRPC](https://grpc.io/), and [MagicOnion](https://github.com/Cysharp/MagicOnion). In other words, LINQ is not for EveryThing, and we believe that the essence of Rx lies in the processing of in-memory messaging (LINQ to Events), which will be our focus. Our main intended uses are UI frameworks and game engines, and we are not concerned with communication processes like [Reactive Streams](https://www.reactive-streams.org/).