opt
/
alt
/
python310
/
lib64
/
python3.10
/
asyncio
/
Go to Home Directory
+
Upload
Create File
root@0UT1S:~$
Execute
By Order of Mr.0UT1S
[DIR] ..
N/A
[DIR] __pycache__
N/A
__init__.py
1.08 KB
Rename
Delete
__main__.py
3.30 KB
Rename
Delete
base_events.py
72.60 KB
Rename
Delete
base_futures.py
2.51 KB
Rename
Delete
base_subprocess.py
8.64 KB
Rename
Delete
base_tasks.py
2.41 KB
Rename
Delete
constants.py
888 bytes
Rename
Delete
coroutines.py
8.59 KB
Rename
Delete
events.py
26.71 KB
Rename
Delete
exceptions.py
1.59 KB
Rename
Delete
format_helpers.py
2.35 KB
Rename
Delete
futures.py
13.85 KB
Rename
Delete
locks.py
13.79 KB
Rename
Delete
log.py
124 bytes
Rename
Delete
mixins.py
803 bytes
Rename
Delete
proactor_events.py
31.78 KB
Rename
Delete
protocols.py
6.79 KB
Rename
Delete
queues.py
7.85 KB
Rename
Delete
runners.py
2.05 KB
Rename
Delete
selector_events.py
38.77 KB
Rename
Delete
sslproto.py
26.82 KB
Rename
Delete
staggered.py
5.85 KB
Rename
Delete
streams.py
25.15 KB
Rename
Delete
subprocess.py
7.23 KB
Rename
Delete
tasks.py
31.70 KB
Rename
Delete
threads.py
790 bytes
Rename
Delete
transports.py
10.47 KB
Rename
Delete
trsock.py
5.74 KB
Rename
Delete
unix_events.py
50.41 KB
Rename
Delete
windows_events.py
32.66 KB
Rename
Delete
windows_utils.py
4.94 KB
Rename
Delete
import linecache import traceback from . import base_futures from . import coroutines def _task_repr_info(task): info = base_futures._future_repr_info(task) if task._must_cancel: # replace status info[0] = 'cancelling' info.insert(1, 'name=%r' % task.get_name()) coro = coroutines._format_coroutine(task._coro) info.insert(2, f'coro=<{coro}>') if task._fut_waiter is not None: info.insert(3, f'wait_for={task._fut_waiter!r}') return info def _task_get_stack(task, limit): frames = [] if hasattr(task._coro, 'cr_frame'): # case 1: 'async def' coroutines f = task._coro.cr_frame elif hasattr(task._coro, 'gi_frame'): # case 2: legacy coroutines f = task._coro.gi_frame elif hasattr(task._coro, 'ag_frame'): # case 3: async generators f = task._coro.ag_frame else: # case 4: unknown objects f = None if f is not None: while f is not None: if limit is not None: if limit <= 0: break limit -= 1 frames.append(f) f = f.f_back frames.reverse() elif task._exception is not None: tb = task._exception.__traceback__ while tb is not None: if limit is not None: if limit <= 0: break limit -= 1 frames.append(tb.tb_frame) tb = tb.tb_next return frames def _task_print_stack(task, limit, file): extracted_list = [] checked = set() for f in task.get_stack(limit=limit): lineno = f.f_lineno co = f.f_code filename = co.co_filename name = co.co_name if filename not in checked: checked.add(filename) linecache.checkcache(filename) line = linecache.getline(filename, lineno, f.f_globals) extracted_list.append((filename, lineno, name, line)) exc = task._exception if not extracted_list: print(f'No stack for {task!r}', file=file) elif exc is not None: print(f'Traceback for {task!r} (most recent call last):', file=file) else: print(f'Stack for {task!r} (most recent call last):', file=file) traceback.print_list(extracted_list, file=file) if exc is not None: for line in traceback.format_exception_only(exc.__class__, exc): print(line, file=file, end='')
Save