Ich habe diese Funktion durchgesehen web3.eth.filter
und bin auf eine Art Wand gestoßen:
var options = {
fromBlock: "pending",
toBlock: "latest",
address: "0xab1323fe3234234234fa34324324234af3423432",
};
var filter = web3.eth.filter(options);
In Bezug auf die "ausstehenden" und "neuesten" Zeichenfolgen ist dies die Definition, die ich von github erhalten habe:
„latest“ kann den aktuellsten und anhängigsten Mining-Block bedeuten
Quelle: https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethfilter
FRAGE:
Was bedeutet das eigentlich? Wenn ich geth
zum Beispiel laufe und eine Reihe von Blöcken ausstehen, die der Blockchain hinzugefügt werden sollen, stellen wir uns vor, dass jedes "-" im folgenden Beispiel 1 Block darstellt:
- - - - - - - - -
Wenn ich fromBlock: "pending"
müsste toBlock: "latest"
, würde das folgendes bedeuten:
(start here) - - - - - - - - - (end here)
Aber wenn das der Fall wäre, würden bis zum Erreichen des Endes weitere Blöcke hinzugefügt:
(start here) - - - - - - - - - (end here) - -
Würde also "neueste" bedeuten , " für immer fortzufahren " oder bei dem letzten zu stoppen, als der Filter tatsächlich erstellt wurde ?
Der Begriff latest
"dynamische Updates". Deshalb werden beim Aufrufen von web3.eth.filter(...).watch() neue Protokolle hinzugefügt. Zumindest sehe ich das mit testrpc
. Es kann zu Verzögerungen im Mainnet kommen.