Future と非同期で実行したい実行時間の長いタスクがありますが、最終的にはタイムアウトさせたいです。タイムアウトが呼び出されていないように思えますが、タイムアウトを正しく使用していない可能性がありますか?
// do actual solution finding asychronously
Future populateFuture = new Future(() {
populateGrid(words, gridWidth, gridHeight);
});
populateFuture.timeout(const Duration(seconds: 3), onTimeout: () {
window.alert("Could not create a word search in a reasonable amount of time.");
});
// after being done, draw it if one was found
populateFuture.then((junk) {
wordSearchGrid.drawOnce();
});
これはバージョン 1.3.0-dev.4.1 の下にあります。おそらく、タイムアウトの使用方法を誤解しているだけです