From 5cc7d152c19e2cea0cf7d86a5fcb5842603c724f Mon Sep 17 00:00:00 2001 From: fuwa Date: Tue, 26 Nov 2019 17:57:38 +0800 Subject: [PATCH] sort rpcs by time --- cyberwow/lib/controller/rpc/rpc.dart | 11 ++++++++++- cyberwow/lib/controller/rpc/rpc2.dart | 10 +++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/cyberwow/lib/controller/rpc/rpc.dart b/cyberwow/lib/controller/rpc/rpc.dart index a4b3592..aeba52b 100644 --- a/cyberwow/lib/controller/rpc/rpc.dart +++ b/cyberwow/lib/controller/rpc/rpc.dart @@ -119,7 +119,16 @@ Future> getConnectionsSimple() async { const minActiveTime = 8; final _activeConnections = _connections.where((x) => x['live_time'] > minActiveTime); - return _activeConnections.map + final _sortedConn = _activeConnections.cast>().toList()..sort + ( + (x, y) { + final int a = x['live_time']; + final int b = y['live_time']; + return a.compareTo(b); + } + ); + + return _sortedConn.map ( (x) { const _remove = diff --git a/cyberwow/lib/controller/rpc/rpc2.dart b/cyberwow/lib/controller/rpc/rpc2.dart index 6f9a373..d3df32c 100644 --- a/cyberwow/lib/controller/rpc/rpc2.dart +++ b/cyberwow/lib/controller/rpc/rpc2.dart @@ -82,7 +82,15 @@ Future> getTransactionPoolSimple() async { return []; } else { - return Stream.fromIterable(result).asyncMap + final _sortedPool = result.cast>()..sort + ( + (x, y) { + final int a = x['receive_time']; + final int b = y['receive_time']; + return b.compareTo(a); + } + ); + return Stream.fromIterable(_sortedPool).asyncMap ( (x) async { const _remove =