protected void DisposeProxy()
{
bool unsubscribe;
lock (iSubscriptionStatusLock)
{
unsubscribe = (iSubscriptionStatus != SubscriptionStatus.eNotSubscribed);
}
if (unsubscribe)
Unsubscribe();
if(iGchProxy.IsAllocated)
iGchProxy.Free();
CpProxyDestroy(iHandle);
}
}