Transactions.
This commit is contained in:
parent
145373399d
commit
e6f702a6b4
@ -61,7 +61,7 @@ class Application(BaseApplication):
|
||||
middlewares=middlewares, template_path=self.template_path, *args, **kwargs
|
||||
)
|
||||
session_setup(self, EncryptedCookieStorage(SESSION_KEY))
|
||||
self.tasks = []
|
||||
self.tasks = asyncio.Queue()
|
||||
self._middlewares.append(session_middleware)
|
||||
self.jinja2_env.add_extension(MarkdownExtension)
|
||||
self.jinja2_env.add_extension(LinkifyExtension)
|
||||
@ -76,19 +76,14 @@ class Application(BaseApplication):
|
||||
self.on_startup.append(self.prepare_database)
|
||||
|
||||
async def create_task(self, task):
|
||||
self.tasks.append(task)
|
||||
await self.tasks.put(task)
|
||||
|
||||
async def task_runner(self):
|
||||
while True:
|
||||
await asyncio.sleep(0.1)
|
||||
task = None
|
||||
try:
|
||||
task = self.tasks.pop(0)
|
||||
except IndexError:
|
||||
continue
|
||||
task = await self.tasks.get()
|
||||
try:
|
||||
await task
|
||||
except:
|
||||
except Exception as ex:
|
||||
print(ex)
|
||||
|
||||
async def prepare_database(self,app):
|
||||
|
@ -62,12 +62,12 @@ class SocketService(BaseService):
|
||||
async def broadcast(self, channel_uid, message):
|
||||
count = 0
|
||||
async for channel_member in self.app.services.channel_member.find(channel_uid=channel_uid):
|
||||
count += await self.send_to_user(channel_member["user_uid"],message)
|
||||
return count
|
||||
await self.send_to_user(channel_member["user_uid"],message)
|
||||
return True
|
||||
|
||||
async def delete(self, ws):
|
||||
for s in [sock for sock in self.sockets if sock.ws == ws]:
|
||||
await s.close()
|
||||
self.sockets.remove(s)
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user