mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2024-11-22 01:16:35 +03:00
parent
7f472ee72c
commit
908375ac42
|
@ -22,6 +22,7 @@ import time
|
|||
from enum import Enum
|
||||
from .session import SessionState, ChannelState
|
||||
from ..tl import types as tl, functions as fn
|
||||
from ..helpers import get_running_loop
|
||||
|
||||
|
||||
# Telegram sends `seq` equal to `0` when "it doesn't matter", so we use that value too.
|
||||
|
@ -53,7 +54,7 @@ ENTRY_SECRET = object()
|
|||
_sentinel = object()
|
||||
|
||||
def next_updates_deadline():
|
||||
return asyncio.get_running_loop().time() + NO_UPDATES_TIMEOUT
|
||||
return get_running_loop().time() + NO_UPDATES_TIMEOUT
|
||||
|
||||
|
||||
class GapError(ValueError):
|
||||
|
@ -237,7 +238,7 @@ class MessageBox:
|
|||
If a deadline expired, the corresponding entries will be marked as needing to get its difference.
|
||||
While there are entries pending of getting their difference, this method returns the current instant.
|
||||
"""
|
||||
now = asyncio.get_running_loop().time()
|
||||
now = get_running_loop().time()
|
||||
|
||||
if self.getting_diff_for:
|
||||
return now
|
||||
|
@ -283,7 +284,7 @@ class MessageBox:
|
|||
|
||||
# Convenience to reset a channel's deadline, with optional timeout.
|
||||
def reset_channel_deadline(self, channel_id, timeout):
|
||||
self.reset_deadline(channel_id, asyncio.get_running_loop().time() + (timeout or NO_UPDATES_TIMEOUT))
|
||||
self.reset_deadline(channel_id, get_running_loop().time() + (timeout or NO_UPDATES_TIMEOUT))
|
||||
|
||||
# Reset all the deadlines in `reset_deadlines_for` and then empty the set.
|
||||
def apply_deadlines_reset(self):
|
||||
|
@ -496,7 +497,7 @@ class MessageBox:
|
|||
# TODO store chats too?
|
||||
if pts.entry not in self.possible_gaps:
|
||||
self.possible_gaps[pts.entry] = PossibleGap(
|
||||
deadline=asyncio.get_running_loop().time() + POSSIBLE_GAP_TIMEOUT,
|
||||
deadline=get_running_loop().time() + POSSIBLE_GAP_TIMEOUT,
|
||||
updates=[]
|
||||
)
|
||||
|
||||
|
|
|
@ -13,6 +13,8 @@ from .. import events, utils, errors
|
|||
from ..events.common import EventBuilder, EventCommon
|
||||
from ..tl import types, functions
|
||||
from .._updates import GapError, PrematureEndReason
|
||||
from ..helpers import get_running_loop
|
||||
|
||||
|
||||
if typing.TYPE_CHECKING:
|
||||
from .telegramclient import TelegramClient
|
||||
|
@ -358,7 +360,7 @@ class UpdateMethods:
|
|||
continue
|
||||
|
||||
deadline = self._message_box.check_deadlines()
|
||||
deadline_delay = deadline - asyncio.get_running_loop().time()
|
||||
deadline_delay = deadline - get_running_loop().time()
|
||||
if deadline_delay > 0:
|
||||
# Don't bother sleeping and timing out if the delay is already 0 (pollutes the logs).
|
||||
try:
|
||||
|
|
|
@ -7,6 +7,7 @@ import struct
|
|||
import inspect
|
||||
import logging
|
||||
import functools
|
||||
import sys
|
||||
from pathlib import Path
|
||||
from hashlib import sha1
|
||||
|
||||
|
@ -423,3 +424,9 @@ class _FileStream(io.IOBase):
|
|||
pass
|
||||
|
||||
# endregion
|
||||
|
||||
def get_running_loop():
|
||||
if sys.version_info[:2] <= (3, 6):
|
||||
return asyncio._get_running_loop()
|
||||
|
||||
return asyncio.get_running_loop()
|
||||
|
|
Loading…
Reference in New Issue
Block a user