Staging
v0.5.1
https://github.com/python/cpython
Raw File
Tip revision: 88db37442238079a2eff4d142e8e94cfddb58e22 authored by Ɓukasz Langa on 24 November 2020, 16:48:47 UTC
Python 3.9.1rc1
Tip revision: 88db374
countcursors.py
import sqlite3

class CountCursorsConnection(sqlite3.Connection):
    def __init__(self, *args, **kwargs):
        sqlite3.Connection.__init__(self, *args, **kwargs)
        self.numcursors = 0

    def cursor(self, *args, **kwargs):
        self.numcursors += 1
        return sqlite3.Connection.cursor(self, *args, **kwargs)

con = sqlite3.connect(":memory:", factory=CountCursorsConnection)
cur1 = con.cursor()
cur2 = con.cursor()
print(con.numcursors)

con.close()
back to top