- 啓動谷歌的AppEngine交易
- 創建和排隊任務到一個隊列(任何交易外)
- 附近交易提交或丟棄它
如何在Java中的事務外執行#2?
動機主要是爲了避免5個任務的限制。
如何在Java中的事務外執行#2?
動機主要是爲了避免5個任務的限制。
您可以對Queue.add方法的以下變體使用空的事務參數。
add(Transaction txn, TaskOptions taskOptions)
這在Queue interface documentation的頂部解釋。它會使任務獨立於活動事務的成功或失敗。
但是,即使事務失敗,如果您真的不關心排隊任務,您可以在事務內的列表中創建TaskOptions對象,然後在事務完成後將其排入一個調用中。這樣,您不會產生在事務內添加到隊列中的延遲成本。
一種選擇是:
合適嗎? (您需要驗證事務任務本身是否可以排隊非事務性任務。)
這是一種解決方法 - 我很確定應該有辦法實際執行我想要的操作。 –
不錯,我看到有可能傳遞null,但錯過了頂部的文檔,說明會做什麼。 –