জিডিবিতে লকটি কীভাবে প্রকাশ করবেন?


11

আরকেজিআইএস 10 এ আমার জিডিবি প্রকাশ করতে আমার সমস্যা আছে। আমার সরঞ্জামটি একটি স্থানীয় জিডিবিতে কাজ করে, তবে আমি প্রক্রিয়াটি পরে এটি প্রকাশ করতে ব্যর্থ হয়েছি। Ag9.3 এ আমি এটি মার্শাল দ্বারা প্রকাশ করতে পারি R রিরিজ কমকম্যাট (ওয়ার্কস্পেস), তবে এটি এজি 10 তে কাজ করে না। সমস্ত ফিচারকার্সার প্রকাশ করাও সহায়তা করে না। কেবলমাত্র পুরো অ্যাপ্লিকেশনটি বন্ধ করেই লকটি "মুছুন" করে। অ্যাপ্লিকেশনটি বন্ধ না করে কীভাবে কেউ আমার জিডিবি ছেড়ে দিতে এবং লকটি "মুছতে" যায়?


এই ফাইলটি "ফাইল জিওডাটাবেস লক" এর জন্য অনুসন্ধান করুন, এর মধ্যে কিছু সাহায্য করতে পারে।
চাদ কুপার

অবশ্যই আমি সাইটটি আগে অনুসন্ধান করেছি। তবে দুর্ভাগ্যক্রমে কোনও পরামর্শই আমাকে সাহায্য করতে পারেনি। আমি কমপ্যাক্ট-জিপি চেষ্টা করেছি, কিন্তু এটি জিডিবি আনলক করে না। এটি অনাথ লক বলে মনে হয় না, কারণ আমি আমার অ্যাপ্লিকেশনটি বন্ধ করার আগে আর্ককিগ্ল্যাজে জিডিবি সম্পাদনা করতে পারি না। তবে ওয়ার্কস্পেস ছেড়ে দেওয়ার সাথে সাথে আমার জিডিবি আনলক করার জন্য আমাকে কোন অবজেক্টটি প্রকাশ করতে হবে?
এ্যানিমিকে


1
Gis.stackexchange.com/questions/6230/… থেকে , এটি সম্ভবত আপনি কোনও বাগে চলে এসেছেন । যদি নীচের উত্তরগুলির মধ্যে কোনওটিই প্রয়োগ না করে, আমি এসরি প্রযুক্তি সহায়তা সমর্থন করব।
ম্যাট উইলকি

উত্তর:


2

আমার কাছে একটি তাত্ক্ষণিক নজর ছিল এবং আপনি যে লকিং দৃশ্যে রয়েছেন বলে মনে হয় সেগুলির তথ্য পেয়েছি। আরকোবজেক্টস 10 এ একটি সেটওরাইটলক এবং ফ্রি রাইটলক বিকল্প রয়েছে।

ফোরামের লিঙ্কটি দেখুন, বিশেষত এসরি থেকে ল্যান্স শিপম্যানের নমুনা http://forums.arcgis.com/threads/36881-the-performance-fgdb-api-amp-arcobjects

মজা করুন, সিডিবি


সেটওরাইটলক এবং ফ্রি রাইটলক আরকঅবজেক্টসে নয় তবে ফাইলজিওডাটাবেস এপিআইতে (আরকোবজেক্টগুলির পৃথক)) এই গ্রন্থাগারটি লকগুলি প্রকাশ / প্রকাশ করতে পারে তবে কেবল এই লাইব্রেরিটি দিয়ে তৈরি করা হয়েছে। ফাইলের নাম ধরণটি আলাদা (কম্পিউটারের নাম ইত্যাদি অন্তর্ভুক্ত করে না))
mstaessen

2

এই অবস্থায় পৌঁছনো সহজ - আপনার কেবলমাত্র একটি জিনিস যা বেঁচে থাকার জন্য কর্মক্ষেত্রের প্রয়োজন এমন কোনও বিষয়ের রেফারেন্স ধারণ করে। উদাহরণস্বরূপ একটি বৈশিষ্ট্য ধারণ করে এমন একটি কাস্টম অবজেক্টের মতো।

একবার আপনি নিশ্চিত হয়ে যান যে আপনার কাছে এ জাতীয় কোনও রেফারেন্স নেই, জঞ্জাল সংগ্রহকারীকে অর্ধেক নির্মাতামূলক ক্লিনআপ মোডে বাধ্য করতে GC.collect () কল করার চেষ্টা করুন


2

আপনি যদি আপনার অ্যাপ্লিকেশনটিতে কার্সার ব্যবহার করছেন তবে ক্রেসারগুলির জীবনকাল পরিচালনা করতে ComReleaser ব্যবহার করে নিশ্চিত হয়ে নিন এবং আপনার সাথে কাজ শেষ করার পরে তাদের ধ্বংস করুন। অন্যথায় তারা আপনার ডিবিএমএস লক করতে পারে। আমার ভুল হতে পারে তবে আমি একা ওয়ার্কস্পেসে রিলিজকমবজেক্টকে কল করা কার্সারের রেফারেন্সটি সরিয়ে ফেলেছি। এই ESRI ব্লগ পোস্টটি একবার দেখুন ...

http://blogs.esri.com/Dev/blogs/geodatabase/archive/2008/12/18/Using-the-ComReleaser-to-manage-the-lifetime-of-cursors-in-.NET.aspx


0

Http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//003n0000007w000000 থেকে আইডিয়া পাওয়া গেছে

"আপনি যখন জিওপ্রসেসিং কমপ্যাক্ট সরঞ্জাম চালনা করেন তখন এই লক ফাইলগুলি সরানো হয়"

string[] lockfiles = Directory.GetFiles(project.Path, "*.lock",   SearchOption.AllDirectories);

if(lockfiles.Length > 0)
{
int lockCt = 0;
while (lockCt < lockfiles.Length)
{
 string inFGDB = System.IO.Path.GetDirectoryName(lockfiles[lockCt]);

 ESRI.ArcGIS.DataManagementTools.Compact compactProcess = new   ESRI.ArcGIS.DataManagementTools.Compact();

 compactProcess.in_workspace = inFGDB;

 geoprocessor.Execute(compactProcess ,null);

  lockCt++;
}
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.