Go-Ethereum

在geth中管理多個過濾器?

  • July 18, 2016

在 geth 的互動式 JavaScript 控制台中,我通過 loadScript() 命令添加了一些 JS 片段(過濾器),我需要刪除/停止執行這些過濾器。有沒有辦法在不重新啟動 geth 實例的情況下做到這一點?

我已載入以下過濾器。它們都不包含監視功能:

  1. 僅當有待處理交易時才進行探勘的過濾器。
  2. 用於檢查交易是否定向到特定帳戶並列印一些詳細資訊的過濾

有沒有辦法辨識和啟動/停止這些過濾器?

是的,當您希望每個過濾器停止執行時,您可以對每個過濾器使用 stopWatching() 函式。

var filter = <your filter code>;
//now you want to stop them being functional
filter.stopWatching();

會做你想做的。

在 JavaScript 控制台上執行eth.filter()命令會給出所有過濾器的列表以及唯一的過濾器 ID。stopWatching()可以使用每個過濾器ID 呼叫該函式以禁用該過濾器。

引用自:https://ethereum.stackexchange.com/questions/6658