Skip to content
Snippets Groups Projects
Commit cf9514bb authored by inso's avatar inso
Browse files

Fasten up models list refresh with asyncio.gather

parent 9ea7c38d
No related branches found
No related tags found
No related merge requests found
......@@ -149,9 +149,13 @@ class IdentitiesTableModel(QAbstractTableModel):
self.endResetModel()
self.beginResetModel()
identities_data = []
requests_coro = []
for identity in identities:
data = await self.identity_data(identity)
identities_data.append(data)
coro = asyncio.ensure_future(self.identity_data(identity))
requests_coro.append(coro)
identities_data = await asyncio.gather(*requests_coro)
if len(identities) > 0:
try:
parameters = await self.community.parameters()
......
......@@ -300,16 +300,21 @@ class HistoryTableModel(QAbstractTableModel):
self.beginResetModel()
transfers_data = []
if self.community:
requests_coro = []
for transfer in self.transfers():
data = None
coro = None
if type(transfer) is Transfer:
if transfer.metadata['issuer'] == self.account.pubkey:
data = await self.data_sent(transfer)
coro = asyncio.ensure_future(self.data_sent(transfer))
else:
data = await self.data_received(transfer)
coro = asyncio.ensure_future(self.data_received(transfer))
elif type(transfer) is dict:
data = await self.data_dividend(transfer)
if data:
coro = asyncio.ensure_future(self.data_dividend(transfer))
if coro:
requests_coro.append(coro)
data_list = await asyncio.gather(*requests_coro)
for data in data_list:
transfers_data.append(data)
self.transfers_data = transfers_data
self.endResetModel()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment