উত্তর:
এর মধ্যে উল্লেখযোগ্য হল, সবসময় স্পষ্টভাবে মুক্তি এক্সিকিউটেবল-এর পাথ যখন আপনি তাদের সঙ্গে সম্পন্ন করা হয়। আমিও কিছু শুমার বস্তু যা ডাটাবেসের এক্সেস পরোক্ষভাবে, উদাহরণস্বরূপ মুক্তি IEnumRelationship আপনি থেকে পাওয়া IRelationshipClass.GetRelationshipsForObject ।
এছাড়াও, যখন আপনি প্রচুর COM দৃষ্টান্ত তৈরি করেন যা স্বল্পকালীন (বিশেষত টাইট লুপগুলিতে) থাকে তখন সেগুলি স্পষ্টভাবে প্রকাশ করাও ভাল ধারণা।
এমন পরিস্থিতিতেও রয়েছে যখন পৃথক বৈশিষ্ট্য (সারি) রেফারেন্স প্রকাশ করার পরামর্শ দেওয়া হয়। উদাহরণস্বরূপ, আপনি যদি কোনও নতুন জিওডাটাবেস সংস্করণ তৈরি করেন, ডেটা সম্পাদনা করুন, পুনর্মিলন করুন এবং পোস্ট করুন, তবে সংস্করণটি মুছে ফেলার প্রচেষ্টা ব্যর্থ হতে পারে কারণ সেখানে অপ্রকাশিত সারি থাকতে পারে, যার ফলে আপনি মুছার চেষ্টা করছেন এমন সংস্করণ (ওয়ার্কস্পেস) এর রেফারেন্স রাখে। বেশিরভাগ ক্ষেত্রেই, যদিও এই জাতীয় পরিস্থিতিগুলি বিরল এবং আপনার প্রতিদিনের আরকঅবজেক্টস বিকাশগুলির জন্য তাদের অ্যাকাউন্ট করার প্রয়োজন নেই। এটি কেবল কোডটিকে বহিরাগত পরিষ্কারের সাথে বিশৃঙ্খল করে তুলবে, এটি কম রক্ষণাবেক্ষণযোগ্য করে তুলবে।
.NET মোড়কে কখন প্রকাশ করবেন না তা বলাও গুরুত্বপূর্ণ - আরকওবজেক্টগুলির আরসিডাব্লু স্পষ্টভাবে প্রকাশ করবেন না যা অন্য কোনও পরিচালিত কোড দ্বারা ব্যবহৃত হতে পারে। এর একটি উদাহরণ - আর্কম্যাপে থাকাকালীন IMap প্রকাশ করবেন না। সাধারণভাবে, আপনি তৈরি করেননি এমন আরকঅবজেক্টগুলি প্রকাশের চেষ্টা করবেন না।
বেশিরভাগ অংশে। নেট জঞ্জাল সংগ্রহ ভাল কাজ করে। আর্কওবজেক্টসে এমন কিছু কেস রয়েছে যেগুলি ডেসটেক্টরগুলিতে গুরুত্বপূর্ণ কাজ করে এবং। নেট র্যাপারগুলির অ-নিরপেক্ষ প্রকৃতির কারণে সমস্যা দেখা দিতে পারে। এই সহায়তার বিষয় মুক্তির বিষয়ে এবং কীভাবে পরিচালনা করতে হবে তা উদ্বিগ্ন হওয়ার জন্য প্রাথমিক কেসগুলি কভার করে।
সর্বদা ধ্বংস:
অন্য কোথাও ব্যবহৃত হচ্ছে এমন কিছু যাতে না ঘটে সে সম্পর্কে সতর্ক থাকুন।
আজ আমি ইএসআরআই ওয়েবসাইটে একটি আকর্ষণীয় আলোচনা পড়েছি যেখানে কર્ક অংশ নিয়েছিল। অন্যান্য খুব আকর্ষণীয় মতামত ছিল, যেমন রিলিজকমঅজেক্ট পদ্ধতি ব্যবহার এবং ফাইনাল রিলিজ কমকমেক্ট (বা এর মতো কিছু)। দুঃখিত, এই মুহূর্তে আমার কাছে লিঙ্কটি নেই।
কেউ কেউ আইআরওগুলি ছেড়ে দেওয়ার পরামর্শও দিয়েছিলেন, তবে অনেকে সম্মত হন যে জিসি তাদের সরাসরি পরিচালনা করতে দেওয়া সহজ easier
আমি কখনও কোনও আইজিওট্রি প্রকাশ করি না। কেউ চেষ্টা করেছে?
আমি ESRI.ArcGIS.ADF.ComReleaser ব্যবহার করব। বলা হচ্ছে যে আমি ঠিক নিশ্চিত নই যে কোনটি অর্ক অবজেক্টগুলি ডিটারমিনিস্টিক রিলিজ প্যাটার্ন ব্যবহার করে তবে আমি বেশিরভাগ ক্ষেত্রেই এটি IServerContext অবজেক্টের সাথে সংযুক্ত করি যেহেতু এটি সবচেয়ে গুরুত্বপূর্ণ।
using (ComReleaser comReleaser = new ComReleaser())
{
}
২০১১ সালের এসরি বিকাশকারী শীর্ষ সম্মেলনে আমি এমন কিছু তথ্য পেতে সক্ষম হয়েছি here
আমি যে বড় তালিকাটি মনে করছিলাম তা ছিল সিঙ্গলটন অবজেক্টের জন্য (যা দুটি বিষয় নীচে সহায়তা করে)।
নেট নেট "সিওএম রেফারেন্সগুলি" বিষয়টিতে আর্কওবজেক্টগুলি ব্যবহার করার জন্য সেরা অনুশীলনগুলির লিঙ্কটি: http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/ রিলিজিং_সিওএম_প্রকাশ / 10001000004tm000000/
এবং এখানে জিওডাটাবেস ব্লগের একটি পোস্ট রয়েছে যা একটি চতুর্থ আলোচনার জন্য রয়েছে যা এতে অবজেক্টগুলির একটি তালিকা রয়েছে: http://blogs.esri.com/dev/blogs/geodatedia/archive/2010/05/18/ কি_2700_s‑up‑with -comreleaser_3f00_.aspx
(অবশেষে ইউআরএলটি কাজ না করার ক্ষেত্রে একটি লিঙ্ক সহ একটি ব্লগ পোস্ট) http://blogs.esri.com/dev/blogs/geodatedia/archive/2008/12/18/ using‑the‑comreleaser‑to‑ manage যে সময়টাতে-জীবনকাল অফ এক্সিকিউটেবল-এর পাথ-ইন-.net.aspx
আইওয়ার্কস্পেস অবজেক্টগুলি ভুলে যাবেন না। কয়েক বছর আগে ইএসআরআই দেব শীর্ষ সম্মেলনে, আমি প্রশ্নটি জিজ্ঞাসা করেছি, এবং ইএসআরআইয়ের উত্তর ছিল আইকারসার এবং আই ওয়ার্কস্পেস অবজেক্ট।
কোনও এসওআইতে কার্সারের মতো সার্ভার অবজেক্টের সাথে কাজ করার সময় কি বিধিগুলি আলাদা হয়? আমি কমরেইলজার ব্যবহার করার চেষ্টা করছি তবে এটি আমার এসওআই কোডের পদ্ধতির কাছে যে কোনও জায়গায় পাওয়া গেলে প্রতিবার ব্যর্থ হয়