4.x: Add virtualCreate and virtualTransform to Flowable#8014
4.x: Add virtualCreate and virtualTransform to Flowable#8014akarnokd merged 6 commits intoReactiveX:4.xfrom
Conversation
🐷 TruffleHog + Entropy Beauty ScanAverage entropy of changed code: 4.753 bits/char Changed files entropy: ✅ No secrets or suspicious high-entropy strings found. Mid-4 beauty heuristic in action — powered by our entropy chats! 😊 |
🐷 TruffleHog + Entropy Beauty ScanAverage entropy of changed code: 4.753 bits/char Changed files entropy: ✅ No secrets or suspicious high-entropy strings found. Mid-4 beauty heuristic in action — powered by our entropy chats! 😊 |
|
Related: #7763 The scheduler upgrade / rewamp will happen in a separate PR. |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## 4.x #8014 +/- ##
======================================
Coverage ? 99.61%
Complexity ? 6791
======================================
Files ? 755
Lines ? 47872
Branches ? 6420
======================================
Hits ? 47686
Misses ? 81
Partials ? 105 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
🐷 TruffleHog + Entropy Beauty ScanAverage entropy of changed code: 4.753 bits/char Changed files entropy: ✅ No secrets or suspicious high-entropy strings found. Mid-4 beauty heuristic in action — powered by our entropy chats! 😊 |
🐷 TruffleHog + Entropy Beauty ScanAverage entropy of changed code: 4.753 bits/char Changed files entropy: ✅ No secrets or suspicious high-entropy strings found. Mid-4 beauty heuristic in action — powered by our entropy chats! 😊 |
🐷 TruffleHog + Entropy Beauty ScanAverage entropy of changed code: 4.753 bits/char Changed files entropy: ✅ No secrets or suspicious high-entropy strings found. Mid-4 beauty heuristic in action — powered by our entropy chats! 😊 |
🐷 TruffleHog + Entropy Beauty ScanAverage entropy of changed code: 4.753 bits/char Changed files entropy: ✅ No secrets or suspicious high-entropy strings found. Mid-4 beauty heuristic in action — powered by our entropy chats! 😊 |
ℹ️ You need the special operators below to make RxJava's non-blocking backpressure into virtually blocked backpressure.
create
Creates a
Flowablefrom a generator callback, that can emit viaVirtualEmitter, run on anExecutorServiceprovided by the user andis suspended automatically upon backpressure. The callback is executed inside the virtual thread thus you can call the usual blocking APIs and get suspensions the same way.
The created
Flowablewill complete once the callback returns normally or with an error if the callback throws an exception.transform
Transforms each upstream value via a callback that can emit zero or more values for each of those upstream values, run on an
ExecutorServiceprovided by the user and is suspended automatically upon backpressure. The callback is executed inside the virtual thread thus you can call the usual blocking APIs and get suspensions the same way.blockingXXX
RxJava uses
java.util.concurrentlocks andCountDownLatchesvia itsblockingXXXwhich will automatically work within a virtual thread. Therefore, there is no need for a separate interop operator. Just block.