added a progress bar when scanning using a generator for scan and get_miner
This commit is contained in:
@@ -23,12 +23,34 @@ async def update_ui_with_data(key, data, append=False):
|
||||
data = window[key].get_text() + data
|
||||
window[key].update(data)
|
||||
|
||||
async def update_prog_bar(amount):
|
||||
window["progress"].Update(amount)
|
||||
|
||||
|
||||
async def scan_network(network):
|
||||
await update_ui_with_data("status", "Scanning")
|
||||
miners = await network.scan_network_for_miners()
|
||||
window["ip_list"].update([str(miner.ip) for miner in miners])
|
||||
await update_ui_with_data("ip_count", str(len(miners)))
|
||||
network_size = len(network)
|
||||
miner_generator = network.scan_network_generator()
|
||||
print(2*network_size)
|
||||
window["progress"].Update(0, max=2*network_size)
|
||||
progress_bar_len = 0
|
||||
miners = []
|
||||
async for miner in miner_generator:
|
||||
if miner:
|
||||
miners.append(miner)
|
||||
progress_bar_len += 1
|
||||
asyncio.create_task(update_prog_bar(progress_bar_len))
|
||||
progress_bar_len += network_size-len(miners)
|
||||
asyncio.create_task(update_prog_bar(progress_bar_len))
|
||||
get_miner_genenerator = miner_factory.get_miner_generator(miners)
|
||||
all_miners = []
|
||||
async for found_miner in get_miner_genenerator:
|
||||
all_miners.append(found_miner)
|
||||
progress_bar_len += 1
|
||||
asyncio.create_task(update_prog_bar(progress_bar_len))
|
||||
|
||||
window["ip_list"].update([str(miner.ip) for miner in all_miners])
|
||||
await update_ui_with_data("ip_count", str(len(all_miners)))
|
||||
await update_ui_with_data("status", "")
|
||||
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user