Rumah > Java > Buat Fluks yang boleh menerbitkan acara sewenang-wenangnya pada masa hadapan

Buat Fluks yang boleh menerbitkan acara sewenang-wenangnya pada masa hadapan

PHPz
Lepaskan: 2024-02-09 11:50:24
ke hadapan
504 orang telah melayarinya

Editor PHP Apple akan memperkenalkan anda kepada alat pembangunan yang menarik-Flux. Flux ialah seni bina aplikasi untuk membina antara muka pengguna yang memfokuskan pada konsep aliran data satu arah, menjadikan pengurusan keadaan mudah dan boleh diramal. Dengan mencipta seni bina Flux, pembangun boleh mengurus keadaan aplikasi mereka dengan mudah dan dapat menerbitkan acara sewenang-wenangnya pada masa hadapan, membolehkan pembangunan aplikasi yang lebih fleksibel. Kesederhanaan dan kebolehlanjutan Flux menjadikannya ideal untuk pembangunan bahagian hadapan moden. Seterusnya, kami akan menyelami cara Flux berfungsi dan cara menggunakannya untuk membina antara muka pengguna yang hebat.

Kandungan soalan

Saya ingin mencipta flux tersuai yang boleh menerbitkan acara sewenang-wenangnya pada masa hadapan.

Contohnya:

@RestController
public class EventController {
    @GetMapping(path = "/event/stream", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
    public Flux<String> eventStream() {
       // how to create a flux here which I can publish arbitrary events to in future?
    }
}
Salin selepas log masuk

Saya melihat kaedah flux.from(...)flux.generate(...) dalam flux javadocs tetapi itu nampaknya tidak memenuhi keperluan saya

Penyelesaian

Saya akhirnya menggunakan sinks.many()

Many<String> emitter = Sinks.many().unicast().onBackpressureBuffer();
Flux<String> flux = emitter.asFlux();
Salin selepas log masuk

Saya boleh melakukannya sekarang

Atas ialah kandungan terperinci Buat Fluks yang boleh menerbitkan acara sewenang-wenangnya pada masa hadapan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:stackoverflow.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan