01. RunnablePassthrough
RunnablePassthrough
RunnablePassthrough
berfungsi sebagai pelintas data. Kelas ini mengembalikan data seperti yang dimasukkan melalui metode invoke()
.
Ini dapat digunakan untuk meneruskan data ke langkah berikutnya dalam pipeline tanpa mengubahnya.
RunnablePassthrough
dapat berguna dalam skenario berikut
Ketika Anda tidak perlu mengubah atau memodifikasi data
Ketika Anda perlu melewatkan langkah tertentu dalam pipeline.
Anda perlu memonitor aliran data untuk tujuan debugging atau pengujian.
Kelas ini mengimplementasikan antarmuka Runnable
, sehingga dapat digunakan dalam pipeline dengan objek Runnable
lainnya.
Mengoper Data
RunnablePassthrough
dapat meneruskan input tanpa perubahan atau meneruskannya dengan kunci tambahan yang ditambahkan.
Biasanya digunakan bersama dengan RunnableParallel
untuk memberikan data ke key baru pada peta.
Ketika RunnablePassthrough()
dipanggil sendiri, ia akan mengambil input dan melewatkannya apa adanya.
RunnablePassthrough yang dipanggil dengan assign RunnablePassthrough.assign(...)
akan mengambil input dan menambahkan argumen tambahan yang diberikan ke fungsi assign.
Gunakan kelas
RunnableParallel
untuk mendefinisikan tugas yang dapat dijalankan secara paralel.Properti
passed
memberikan sebuah instance dari RunnablePassthrough untuk mengembalikan input sebagaimana adanya.Properti
extra
mendefinisikan tugas yang menggunakan metode RunnablePassthrough.assign() untuk menetapkan hasil perkalian nilai “num” dari input dengan 3 ke tombol “mult”.Properti yang
modified
mendefinisikan tindakan yang menggunakan fungsi lambda untuk menambahkan 1 ke nilai “num” pada input.Panggil metode
runnable.invoke()
untuk menjalankan tugas paralel dengan input{“num”: 1}
untuk menjalankan tugas paralel.
Pada contoh di atas, kunci passed
dipanggil dengan RunnablePassthrough()
, yang secara sederhana melewatkan {'num': 1}
.
Pada baris kedua, kami menggunakan RunnablePastshrough.assign
dengan fungsi lambda yang mengalikan nilai numerik dengan 3. Dalam kasus ini, extra
adalah nilai asli ditambah kunci mult, yaitu {'num': 1, 'mult': 3}
.
Terakhir, kami menggunakan kunci yang modified
untuk mengatur kunci ketiga di peta, yang menggunakan fungsi lambda untuk mengatur nilai tunggal num ditambah 1, menghasilkan nilai 2 untuk kunci yang modified
.
Contoh mesin pencari
Pada contoh di bawah ini, Anda dapat melihat kasus penggunaan untuk menggunakan RunnablePassthrough
.
Last updated