]> git.ipfire.org Git - thirdparty/psycopg.git/commitdiff
refactor: introduce ALock/Lock in acompat
authorDaniele Varrazzo <daniele.varrazzo@gmail.com>
Sat, 6 Sep 2025 00:21:22 +0000 (02:21 +0200)
committerDaniele Varrazzo <daniele.varrazzo@gmail.com>
Sat, 6 Sep 2025 19:23:53 +0000 (21:23 +0200)
psycopg/psycopg/_acompat.py
psycopg/psycopg/connection.py
psycopg/psycopg/connection_async.py

index 3511e0e7bca02f2a221e1f1ce0469971f39982ee..bfbe6cd618a2c522ec5a6b7d2a8d7a7fb78f84f0 100644 (file)
@@ -20,6 +20,9 @@ from ._compat import TypeVar
 
 Worker: TypeAlias = threading.Thread
 AWorker: TypeAlias = asyncio.Task[None]
+Lock = threading.Lock
+ALock = asyncio.Lock
+
 T = TypeVar("T")
 
 
index bb39c54608a3005d7a92fdb4f85a5e118d608e7d..338665276fa3a8154fb5e7f444b27afc8f267815 100644 (file)
@@ -13,7 +13,6 @@ import logging
 from time import monotonic
 from types import TracebackType
 from typing import TYPE_CHECKING, Any, cast, overload
-from threading import Lock
 from contextlib import contextmanager
 from collections.abc import Generator, Iterator
 
@@ -26,6 +25,7 @@ from .adapt import AdaptersMap
 from ._enums import IsolationLevel
 from .cursor import Cursor
 from ._compat import Self
+from ._acompat import Lock
 from .conninfo import conninfo_attempts, conninfo_to_dict, make_conninfo
 from .conninfo import timeout_from_conninfo
 from ._pipeline import Pipeline
index d37de7c7382466c0c994d2dcaac0b1377063c934..d787750939e30df2634ceff2b7a0eb6dd1c8f789 100644 (file)
@@ -21,6 +21,7 @@ from .rows import AsyncRowFactory, Row, args_row, tuple_row
 from .adapt import AdaptersMap
 from ._enums import IsolationLevel
 from ._compat import Self
+from ._acompat import ALock
 from .conninfo import conninfo_attempts_async, conninfo_to_dict, make_conninfo
 from .conninfo import timeout_from_conninfo
 from ._pipeline import AsyncPipeline
@@ -34,9 +35,6 @@ from ._server_cursor_async import AsyncServerCursor
 if True:  # ASYNC
     import sys
     import asyncio
-    from asyncio import Lock, to_thread
-else:
-    from threading import Lock
 
 if TYPE_CHECKING:
     from .pq.abc import PGconn
@@ -77,7 +75,7 @@ class AsyncConnection(BaseConnection[Row]):
     ):
         super().__init__(pgconn)
         self.row_factory = row_factory
-        self.lock = Lock()
+        self.lock = ALock()
         self.cursor_factory = AsyncCursor
         self.server_cursor_factory = AsyncServerCursor
 
@@ -311,7 +309,7 @@ class AsyncConnection(BaseConnection[Row]):
             )
         else:
             if True:  # ASYNC
-                await to_thread(self.cancel)
+                await asyncio.to_thread(self.cancel)
             else:
                 self.cancel()