python - 如何测试一个对象是否是锁?
问题描述
你将如何测试一个对象是否是 athreading.Lock
或multiprocessing.Lock
(以及它们各自RLock
的 s?)。Python 中的这些对象(至少 3 个)是工厂方法,所以你不能只做:
isinstance(obj, threading.Lock)
因为这会给:
TypeError: isinstance() arg 2 must be a type or tuple of types
解决方案
如果你有一个实例,你可以得到它的类型。所以简单的解决方案是
threading_Lock = type(threading.Lock())
isinstance(obj, threading_Lock)
推荐阅读
- javascript - 使用python从javascript var数据创建字典
- kubernetes - Traefik 1.7 升级打破 kubernetes 1.7.12
- java - 循环内的 Android Studio 延迟
- javascript - 对用户隐藏 React Src 直到登录
- pandas - 如何在 Dask DataFrame 上正确执行多索引切片?
- jmeter - Jmeter - 同一线程组中不同http请求的计数变化
- kotlin - 如何调用具有接收器的类的函数?
- javascript - 如果索引为0,Vue.js如何添加活动类
- macos - Android Studio - 安装 APK 时出错 + 管道损坏错误(在 Mac 上)
- scala - 如何使用 Spark-Sql 高效读取 Hive 表