"বার্তা প্রেরিত" এবং "বার্তা প্রাপ্ত" কলামগুলির সাথে ক্রিয়াকলাপ কী ধরণের "বার্তা" পর্যবেক্ষণ করে?


9

ওএস এক্স এর ক্রিয়াকলাপ মনিটরে, প্রক্রিয়া তালিকা দর্শনটিতে অতিরিক্ত কলাম যুক্ত করা সম্ভব। সেই তালিকায় পাওয়া দুটি কলাম হ'ল "বার্তা প্রেরিত" এবং "বার্তাগুলি প্রাপ্ত হয়েছে", যা যথাক্রমে "প্রেরিত এমএসজিএস" এবং "আরসিভিডি এমএসজিএস" হিসাবে প্রদর্শিত হয়। সাক্ষী:

"প্রেরিত এমএসজিএস" এবং "আরসিভিডি এমএসজিএস" কলামগুলি দেখায় ক্রিয়াকলাপ মনিটরের উইন্ডোর অংশ

ক্রিয়াকলাপ মনিটর কোন ধরণের "বার্তা" উল্লেখ করছে?

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

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

উত্তর:


7

এই সংখ্যাগুলি ম্যাচ বার্তাগুলিকে / আউট গণনাগুলির সাথে মেলে, সুতরাং আপনি তাদের আপত্তি_এমএসজিএসেন্ড গণনা হিসাবে ব্যাখ্যা না করার ক্ষেত্রে সঠিক বলে মনে হচ্ছে।

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

এক্সকোড ইনস্ট্রুমেন্টস স্ক্রিন শট

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

বিশেষত, ম্যাক ওএস এক্স ডিবাগিং ম্যাজিকের জন্য NSObjCMessageLoggingEnabledএবং objc_msgSendএর জন্য অনুসন্ধান করুন - রেজিস্ট্রেশন ডকুমেন্টেশনের টুলস গাইড অংশটি আপজেক্ট গণনাগুলিতে পেতে।

mach messageএক্সকোডে অনুসন্ধান করুন এবং মাচ ম্যাসেজের সারি বিশদ বিবরণ এবং সেগুলি কী কী তৈরি করে তা জন্য কার্নেল প্রোগ্রামিং গাইডের আইপিসি / বার্তা ক্যুইস বিভাগটি সন্ধান করুন। আপনি লক্ষ্য করে দেখে এগুলি অনেক নিম্ন স্তরের আইপিসির কার্নেল ট্র্যাফিক।

আপনি সম্ভবত এটি ডেভেলপার.এপল.কম. এও খুঁজে পেতে পারেন তবে এক্সকোডের মধ্যে থেকে ডকুমেন্টেশন স্থানীয় থাকার অনেক সুবিধা রয়েছে।


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

1
আমি ভেবেছিলাম সেগুলি আপত্তি_এসএমএস সেন্ড গণনা, তবে এখন আমি দেখি যে আমি ভুল। আপনি ক্রিয়াকলাপ মনিটরের মধ্য থেকে কোনও প্রক্রিয়া নির্বাচন করার সময় তারা ম্যাক বার্তাগুলির গণনাগুলিতে নিখুঁতভাবে ম্যাপ করে। আমি আমার উত্তরটি আরও সঠিক এবং কম ভুল হিসাবে সংশোধন করব।
bmike

ধন্যবাদ! কার্নেল প্রোগ্রামিং গাইডের নির্দেশকটি বিশেষভাবে সহায়ক। এটি সম্পর্কে সচেতন ছিল না।
ক্রিস ডাব্লু। রিয়া

হ্যাঁ - অনেক আশ্চর্যজনক ডকুমেন্টেশন রয়েছে, এবং যদিও এটি আমি জানি যে এটি কীভাবে এবং কেন এটি ডেভেলপার.অ্যাপল ডট কম এ রেখেছিল, আমি যখন ডকুমেন্টগুলি ব্রাউজ করতে এক্সকোড ব্যবহার করি তখন এটি ব্যবহার এবং এটি সন্ধান করার ক্ষেত্রে আমি আরও কার্যকর am
bmike
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.