我在听一个动作的传奇。 并在分派此操作后执行阻塞调用。
问题在于很多动作(相同动作)是在同一时间分派的,而我的传奇无法采取所有动作。但是我需要同步处理每个动作。
我知道这是redux-saga文档中的一个已知问题:My Saga is missing dispatched actions
但是事实是我不能使用fork,因为在处理新的调用之前我确实需要结束上一个调用。
这是我的代码:
from tkinter import *
from tkinter import ttk
root = Tk()
tree = ttk.Treeview(root)
tree["columns"] = (1,2,3,4,5)
tree.column(1, width = 100, anchor = "center")
tree.column(2, width = 100, anchor = "center")
tree.heading(1, text = "First Header")
tree.heading(2, text = "Second Header")
tree.pack(expand = True, fill = "both")
root.mainloop()
有人可以解决吗?
答案 0 :(得分:3)
您可以创建一个缓冲操作通道并从中进行操作。
export function* readProducts() {
const addProductRequests = yield actionChannel(RFID__ADD_PRODUCT);
while (true) {
const {
payload: { tags },
} = yield take(addProductRequests);
// sequential add of each item
for (const tag of tags) {
yield call(addProductViaRfid, tag);
}
}
}