I have an object in the heap and a reference to it. There are certain circumstances in which the object gets deleted but the reference that points to its location doesn't know that. How can I check if there is real data in the heap?
For example:
from PySide import *
a = QProgressBar()
b = QProgressBar()
self.setIndexWidget(index,a)
self.setIndexWidget(index,b)
Then the a
object gets deleted but print(a)
returns a valid address. However if you try a.value()
- runtime error occurs (C++ object already deleted).
a is None
returns False
.
For the PySide
objects you'll need the shiboken
module to perform object queries.
Visit the shiboken module documention:
import shiboken
print shiboken.isValid(a)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With