Saya memiliki masalah untuk melepaskan gdb di ArcGIS10. Alat saya berfungsi dengan gdb lokal, tetapi saya gagal melepaskannya setelah proses. Di Ag9.3 saya bisa merilisnya hanya dengan Marshal.ReleaseComObject (workspace), tetapi ini tidak bekerja di AG10. Juga melepaskan semua FeatureCursors tidak membantu. Hanya menutup seluruh aplikasi "menghapus" kunci. Adakah yang tahu cara melepaskan gdb dan "menghapus" kunci tanpa menutup aplikasi?
arcgis-10.0
arcobjects
AnnemieK
sumber
sumber
Jawaban:
Saya melihat sekilas dan menemukan informasi tentang skenario penguncian yang tampaknya Anda alami. Di ArcObjects 10 ada opsi SetWriteLock dan FreeWriteLock.
lihat tautan forum khusus sampel dari Lance Shipman dari Esri http://forums.arcgis.com/threads/36881-the-performance-fgdb-api-amp-ar-obcobjects
Bersenang-senanglah, CDB
sumber
Untuk mencapai kondisi ini mudah - yang Anda butuhkan hanyalah satu objek yang memegang referensi ke sesuatu yang membutuhkan ruang kerja agar tetap hidup. Seperti objek khusus yang menyimpan Fitur misalnya.
Setelah Anda yakin tidak memiliki referensi seperti itu, coba panggil GC.collect () untuk memaksa pemulung ke mode pembersihan kuasi-deterministik
sumber
Jika Anda menggunakan kursor dalam aplikasi Anda, pastikan untuk menggunakan ComReleaser untuk mengelola masa pakai kursor dan menghancurkannya ketika Anda selesai menggunakannya. Kalau tidak, mereka dapat mengunci DBMS Anda. Saya mungkin salah, tapi saya tidak memanggil ReleaseComObject di ruang kerja saja menghapus referensi ke kursor. Lihatlah posting blog ESRI ini ...
http://blogs.esri.com/Dev/blogs/geodatabase/archive/2008/12/18/Using-the-ComReleaser-to-manage-the-lifetime-of-cursors-in-.NET.aspx
sumber
Ditemukan Ide dari http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//003n0000007w000000
"File .lock ini dihapus setiap kali Anda menjalankan alat Compact geoprosesing"
sumber