Hi!
Sorry if I wrote the wrong section…
I cached a very bad exception when Civil 3D closing:
Exception thrown: ‘System.AccessViolationException’ in LibG.Managed.dll
An unhandled exception of type ‘System.AccessViolationException’ occurred in LibG.Managed.dll
Attempting to read or write protected memory. This often indicates that the other memory is damaged.
Screencast: Screencast Title
How can this be caused and what are the consequences?
Hi @DmitriyZagorulkin - I would advise disposing everything (this issue has less to do with a memory leak, and more with threading issues) - I cannot promise anything of course, but we are looking at making these dispose calls less important.
I think, you don’t have to dispose AutoCAD database objects when they open with transaction (with method Transaction.GetObject). The transaction itself closes these objects. However, if you use “using” external block, there will be no error. But it is not necessary.
Also, you don’t have to call Transaction.Commit() method.
P.S. Yes, i found call Commit() inside AcDynamoServices.dll. But there are no call Dispose() for Transaction, only for DocumentLock… It’s very strange…