ОШИБКА: asyncio: незакрытый сеанс клиента client_session: <объект aiohttp.client.ClientSession по адресу 0x7fe9f447e908> - PullRequest
0 голосов
/ 18 июня 2019

Я установил StarCraft II на свою Ubuntu с вином и следил за серией sentdex

https://www.youtube.com/watch?v=5U2WdZxJhEE&list=PLQVvvaa0QuDcT3tPehHdisGMc8TInNqdq&index=2

Я был на втором видео, и правильно копировал код, как он пишет, и при запуске игра открывается и сразу закрывается и выдает это в терминале

0033:fixme:ntdll:NtQueryDirectoryObject multiple entries not implemented

Я понятия не имею, что делать, так как я ничего не ищу, кажется, что я ищу. после этого я открыл игру не через свой код, используя библиотеку sc2, а запустил файл .exe с вином, и, не закрывая игру, я запустил свой код, который выдал следующую ошибку. И после этого я попытался убить этот процесс, но, похоже, не могу его найти, и он продолжает выдавать следующую ошибку, я даже перезагрузил компьютер, и ничего. Вот ошибка

ERROR:asyncio:Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7fe9f447e908>

Вот мой код.

import sc2
from sc2 import run_game, maps, Race, Difficulty
from sc2.player import Bot, Computer
from sc2.constants import NEXUS, PROBE

class MelsBot(sc2.BotAI):
    async def on_step(self, iteration):
        await self.distribute_workers()
        await self.build_workers()
        await self.build_pylons()

    async def build_workers(self):
        for nexus in self.units(NEXUS).ready.noqueue:
            if self.can_afford(PROBE):
                await self.do(nexus.train(PROBE))

    async def build_pylons(self):
        if self.supply_left < 5 and not self.already_pending(PYLON):
            nexuses = self.units(NEXUS).ready
            if nexuses.exists:
                if self.can_afford(PYLON):
                    await self.build(PYLON, near=nexuses.first)


run_game(maps.get("AbyssalReefLE"), [
    Bot(Race.Protoss, MelsBot()),
    Computer(Race.Protoss, Difficulty.Easy)
    ], realtime=True)
...