আর্দোবজেক্টস অ্যাডিনে চলছে ধীর?


9

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

কারণ এটি একটি শ্রেণিবদ্ধ গ্রন্থাগার আমি এটি উইনফর্মস ইউআইতে এবং অ্যাডিন হিসাবেও মুড়ে ফেলেছি। কোডের উভয় সেট হুবহু একই এবং সঠিক একই ডেটা ব্যবহার করে পরীক্ষা করা হয়েছিল। উইনফরম এবং অ্যাডিন উভয়ই পছন্দসই ফলাফল সহ কোডটি সম্পূর্ণ করে এবং কোনও মেমরি ফাঁস স্পষ্ট হয় না। অ্যাডিনের ক্ষেত্রে এই মুহুর্তে মানচিত্রের সময়কালের সাথে কোনও মিথস্ক্রিয়া নেই এবং উইনফর্মস কোডটিতে কোনও ম্যাপিং বা প্রদর্শন উপাদান নেই।

কেবলমাত্র ইউআই আপডেটগুলি হ'ল অ্যাডইন এবং ইউআই উভয় ক্ষেত্রে একটি অগ্রগতি ডায়ালগের আপডেট। অ্যাডিন একটি ডকেবল উইন্ডো ব্যবহার করছে (ব্যবহারকারী নিয়ন্ত্রণ UI)।

আমি যে সমস্যাটি দেখছি তা হ'ল লাইব্রেরিটি অ্যাডইন থেকে কল করা হয়, উইনফর্মস অ্যাপ্লিকেশনটির মাধ্যমে কোড প্রয়োগ করা একই কোডের চেয়ে 5x কম ধীর হয়।

আমি কেন দেখতে পাচ্ছি এমন কোনও ধারণাগুলি কেন ঘটছে তা দেখার জন্য?


যদি আপনি কোন arcobjects ব্যবহার করছেন singletons ?
কर्क কুইকেনডাল

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

আপনি ব্যবহার করে তৈরি করছেন Activator.CreateInstance, বা সাথে new?
কर्क কুইকেনডাল

আমি নতুন (বা ছিল) নতুন ব্যবহার করছি। অ্যাক্টিভেটর.ক্রিয়েটআইনস্ট্যান্স পদ্ধতিটি চেষ্টা করার জন্য আমি এখন আপডেট করছি।
জাস্টিন ক্যারাসিক

আমি কোডটি আপডেট করেছি (এটি নির্দেশ করার জন্য ধন্যবাদ) তবে আপডেটের সাথে সত্যিকারের পার্থক্য দেখছি না।
জাস্টিন কারাসিক

উত্তর:


1

উভয় সংস্করণ তুলনা করার সময়, আপনি কেবল জিওপ্রসেসিং সময়ের চেয়ে বেশি সময় নির্ধারণ করতে পারেন।

সম্ভবত আপনার স্ট্যান্ডেলোন অ্যাপ্লিকেশনটিতে কিছু সূচনা প্রক্রিয়া চলছে যা ইতিমধ্যে আর্টম্যাপে শুরু হয়ে গিয়েছে যেমন এমএক্সডোকামেন্ট অবজেক্ট তৈরি, লাইসেন্স চেকআউট, স্ক্র্যাচ জিডিবি তৈরি ইত্যাদি etc.

আর্কম্যাপ এবং আপনার ডেস্কটপ অ্যাপ্লিকেশনটিতে ব্যবহৃত নেট ফ্রেমওয়ার্ক সংস্করণেও পার্থক্য থাকতে পারে (যদিও আমি এটি দেখতে পাচ্ছি না যে 5x মন্দার কারণ হতে পারে)।

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