I've been working on an issue for a days now. Our C# Application uses IBM MQ client to connect to a MQManager and place message to its Queue. However our application logs shows the following:
<InnerException>
<InnerType>System.NullReferenceException</InnerType>
<InnerMessage>Object reference not set to an instance of an object.</InnerMessage>
<InnerStackTrace>
at IBM.WMQ.MQQueueManager.Dispose(Boolean disposing)
at IBM.WMQ.MQQueueManager.Finalize()
</InnerStackTrace>
I have done some research on overriding Finalize() method. It seems overriding it may cause GC to take 2 cycles which will result to a waste of memory that can be cleaned. Also more CPU will be consumed. Will there be an instance that an object will not be properly GC'ied? due to some external factors like High CPU Usage?