ক্লায়েন্টইম্পল
public class ClientImpl
extends JdwpAgent implements Client প্রসারিত করে
| java.lang.অবজেক্ট | ||
| ↳ | com.android.tradefed.device.server.jdwp.Jdwp এজেন্ট | |
| ↳ | com.android.tradefed.device.server.ClientImpl সম্পর্কে | |
এটি একটি একক ক্লায়েন্টকে প্রতিনিধিত্ব করে, সাধারণত একটি ডালভিক ভিএম প্রক্রিয়া।
এই ক্লাসটি ক্লায়েন্টের মৌলিক তথ্যের পাশাপাশি ক্লায়েন্টের উপর ক্রিয়া সম্পাদনের পদ্ধতিগুলিতে অ্যাক্সেস দেয়।
সাধারণত রিয়েল টাইমে আপডেট করা আরও বিস্তারিত তথ্য ClientData ক্লাসের মাধ্যমে অ্যাক্সেস করা যেতে পারে। প্রতিটি Client অবজেক্টের নিজস্ব ClientData getClientData() এর মাধ্যমে অ্যাক্সেস করা হয়।
সারাংশ
পাবলিক কনস্ট্রাক্টর | |
|---|---|
ClientImpl ( DeviceImpl device, SocketChannel chan, int pid)একটি নতুন ক্লায়েন্ট সংযোগের জন্য একটি বস্তু তৈরি করুন। | |
পাবলিক পদ্ধতি | |
|---|---|
void | captureView (String viewRoot, String view, DebugViewDumpHandler handler) |
void | close (boolean notify)ক্লায়েন্ট সকেট চ্যানেলটি বন্ধ করুন। |
boolean | ddmSeen ()মনিটরথ্রেড যখন কোনও ডিডিএম অনুরোধ বা উত্তর দেখে তখন এটি কল করে। |
void | dumpDisplayList (String viewRoot, String view) |
void | dumpViewHierarchy (String viewRoot, boolean skipChildren, boolean includeProperties, boolean useV2, DebugViewDumpHandler handler) |
void | enableAllocationTracker (boolean enable)এই ক্লায়েন্টের জন্য বরাদ্দ ট্র্যাকার সক্ষম বা নিষ্ক্রিয় করে। |
void | executeGarbageCollector ()ক্লায়েন্টকে তার আবর্জনা সংগ্রাহককে কার্যকর করতে বাধ্য করে। |
ClientData | getClientData () এই ক্লায়েন্ট তথ্য ধারণকারী |
int | getDebuggerListenPort ()এই ক্লায়েন্টের জন্য ডিবাগার পোর্ট ফেরত দেয়। |
IDevice | getDevice () এই ক্লায়েন্টটি যে |
DeviceImpl | getDeviceImpl () এই ক্লায়েন্টটি যে |
JdwpPacket | getJdwpPacket ()বাফারে থাকা প্রথম পূর্ণ JDWP প্যাকেটের তথ্য ফেরত দিন। |
void | initializeHeapUpdateStatus () |
boolean | isDdmAware () ক্লায়েন্ট VM যদি DDM-সচেতন হয় তাহলে |
boolean | isDebuggerAttached () যদি বর্তমানে ক্লায়েন্টের সাথে একটি ডিবাগার সংযুক্ত থাকে তবে |
boolean | isHeapUpdateEnabled ()কোনও হিপ আপডেট সক্ষম আছে কিনা তা ফেরত দেয়। |
boolean | isThreadUpdateEnabled ()থ্রেড আপডেট সক্রিয় কিনা তা ফেরত দেয়। |
boolean | isValid () এই |
void | kill ()VM-এ একটি কিল মেসেজ পাঠায়। |
void | listViewRoots ( DebugViewDumpHandler replyHandler) |
void | notifyVmMirrorExited () ডিবাগার VM মিররগুলি DDMLib এর পিছনের দিকে বেরিয়ে যেতে পারে, যার ফলে বিভিন্ন রেস বা পার্মা- |
void | packetFailed ( JdwpPacket reply)আগের একটি অনুরোধ ব্যর্থ হয়েছে। |
void | read ()আমাদের চ্যানেল থেকে তথ্য পড়ুন, শুধুমাত্র একটি থ্রেড থেকে কল করা উচিত। |
void | register (Selector sel)একজন নির্বাচকের সাথে ক্লায়েন্ট নিবন্ধন করলে, ক্লায়েন্ট তৈরির পরপরই কল করা উচিত। |
void | requestAllocationDetails () |
void | requestAllocationStatus ()বরাদ্দ ট্র্যাকিংয়ের সক্ষম অবস্থা পাঠানোর জন্য VM-কে একটি অনুরোধ পাঠায়। |
void | requestMethodProfilingStatus ()পদ্ধতি প্রোফাইলিংয়ের সক্ষম অবস্থা পাঠানোর জন্য VM-কে একটি অনুরোধ পাঠায়। |
boolean | requestNativeHeapInformation ()একটি নেটিভ হিপ আপডেট অনুরোধ পাঠায়। |
void | requestThreadStackTrace (int threadId)একটি থ্রেড স্ট্যাক ট্রেস আপডেট অনুরোধ পাঠায়। |
void | requestThreadUpdate ()একটি থ্রেড আপডেট অনুরোধ পাঠায়। |
void | setHeapInfoUpdateEnabled (boolean enabled) |
void | setHeapSegmentUpdateEnabled (boolean enabled) |
void | setHeapUpdateEnabled (boolean enabled)হিপ আপডেট সক্ষম বা অক্ষম করে। |
void | setThreadUpdateEnabled (boolean enabled)থ্রেড আপডেট সক্ষম বা অক্ষম করে। |
void | startMethodTracer () |
boolean | startOpenGlTracing () |
void | startSamplingProfiler (int samplingInterval, TimeUnit timeUnit) |
void | stopMethodTracer () |
boolean | stopOpenGlTracing () |
void | stopSamplingProfiler () |
String | toString () |
void | toggleMethodProfiling () এই পদ্ধতিটি বন্ধ করা হয়েছে। এর পরিবর্তে |
void | update (int changeMask) |
void | updateHeapInfo ()একটি একক হিপ আপডেট চালু করে। |
সুরক্ষিত পদ্ধতি | |
|---|---|
void | send ( JdwpPacket packet)ক্লায়েন্টকে একটি DDM প্যাকেট পাঠান। |
পাবলিক কনস্ট্রাক্টর
ক্লায়েন্টইম্পল
public ClientImpl (DeviceImpl device, SocketChannel chan, int pid)
একটি নতুন ক্লায়েন্ট সংযোগের জন্য একটি বস্তু তৈরি করুন।
| পরামিতি | |
|---|---|
device | DeviceImpl : এই ক্লায়েন্ট যে ডিভাইসটির সাথে সম্পর্কিত |
chan | SocketChannel : সংযুক্ত ERROR(/SocketChannel) । |
pid | int : ক্লায়েন্ট পিড। |
পাবলিক পদ্ধতি
ক্যাপচারভিউ
public void captureView (String viewRoot,
String view,
DebugViewDumpHandler handler)| পরামিতি | |
|---|---|
viewRoot | String |
view | String |
handler | DebugViewDumpHandler |
বন্ধ
public void close (boolean notify)
ক্লায়েন্ট সকেট চ্যানেলটি বন্ধ করুন। যদি আমাদের সাথে যুক্ত কোন ডিবাগার থাকে, তাহলে সেটিও বন্ধ করুন।
একটি চ্যানেল বন্ধ করলে তা স্বয়ংক্রিয়ভাবে নির্বাচক থেকে নিবন্ধনমুক্ত হয়ে যায়। তবে, নির্বাচক লুপটি আসলে সেগুলিকে ছেড়ে দেওয়ার এবং ফাইল বর্ণনাকারীগুলিকে বন্ধ করার অনুমতি দেওয়ার আগে আমাদের পুনরাবৃত্তি করতে হবে। কলার এটি পরিচালনা করবে বলে আশা করা হচ্ছে।
| পরামিতি | |
|---|---|
notify | boolean : শ্রোতাদের পরিবর্তন সম্পর্কে অবহিত করা হবে কিনা। |
ddmSeen সম্পর্কে
public boolean ddmSeen ()
মনিটরথ্রেড যখন একটি DDM অনুরোধ বা উত্তর দেখে তখন এটিকে কল করে। যদি আমরা আগে কোনও DDM প্যাকেট না দেখি, তাহলে আমরা স্টেটটিকে ST_READY তে অগ্রসর করি এবং "false" ফেরত দিই। অন্যথায়, কেবল true ফেরত দিই।
ধারণাটি হল যখন আমরা প্রথম কোনও DDM প্যাকেট দেখি তখন মনিটরথ্রেডকে জানানো, যাতে ক্লায়েন্ট সংযোগ তৈরি হওয়ার পরে আমরা হ্যান্ডলারগুলিতে একটি সম্প্রচার পাঠাতে পারি। এই পদ্ধতিটি সিঙ্ক্রোনাইজ করা হয় যাতে আমরা কেবল একবার সম্প্রচার পাঠাই।
| রিটার্নস | |
|---|---|
boolean | |
ডাম্পডিসপ্লেলিস্ট
public void dumpDisplayList (String viewRoot,
String view)| পরামিতি | |
|---|---|
viewRoot | String |
view | String |
ডাম্পভিউহায়ারার্কি
public void dumpViewHierarchy (String viewRoot,
boolean skipChildren,
boolean includeProperties,
boolean useV2,
DebugViewDumpHandler handler)| পরামিতি | |
|---|---|
viewRoot | String |
skipChildren | boolean |
includeProperties | boolean |
useV2 | boolean |
handler | DebugViewDumpHandler |
অ্যালোকেশন ট্র্যাকার সক্ষম করুন
public void enableAllocationTracker (boolean enable)
এই ক্লায়েন্টের জন্য বরাদ্দ ট্র্যাকার সক্ষম বা নিষ্ক্রিয় করে।
যদি সক্ষম করা থাকে, তাহলে VM বরাদ্দকরণের তথ্য ট্র্যাক করা শুরু করবে। requestAllocationDetails() কল করলে VM সক্ষমকরণ এবং অনুরোধের মধ্যে ঘটে যাওয়া সমস্ত বরাদ্দকরণের তথ্য পাঠাবে।
| পরামিতি | |
|---|---|
enable | boolean |
গার্বেজ কালেক্টর এক্সিকিউট করুন
public void executeGarbageCollector ()
ক্লায়েন্টকে তার আবর্জনা সংগ্রাহককে কার্যকর করতে বাধ্য করে।
ক্লায়েন্টডেটা পান
public ClientData getClientData ()
এই ক্লায়েন্ট তথ্য ধারণকারী ClientData অবজেক্টটি ফেরত পাঠায়।
| রিটার্নস | |
|---|---|
ClientData | |
getDebuggerListenPort সম্পর্কে
public int getDebuggerListenPort ()
এই ক্লায়েন্টের জন্য ডিবাগার পোর্ট ফেরত দেয়।
| রিটার্নস | |
|---|---|
int | |
ডিভাইস পান
public IDevice getDevice ()
এই ক্লায়েন্টটি যে IDevice চলছে তা ফেরত দেয়।
| রিটার্নস | |
|---|---|
IDevice | |
getDeviceImpl সম্পর্কে
public DeviceImpl getDeviceImpl ()
এই ক্লায়েন্টটি যে DeviceImpl এ চলছে তা ফেরত পাঠায়।
| রিটার্নস | |
|---|---|
DeviceImpl | |
getJdwpPacket সম্পর্কে
public JdwpPacket getJdwpPacket ()
বাফারে থাকা প্রথম পূর্ণ JDWP প্যাকেটের তথ্য ফেরত দিন।
যদি আমাদের কাছে এখনও একটি পূর্ণ প্যাকেট না থাকে, তাহলে null ফেরত দিন।
যদি আমরা এখনও JDWP হ্যান্ডশেক না পাই, তাহলে আমরা এখানে এটির জন্য নজর রাখি এবং স্বীকার না করেই এটি গ্রহণ করি। প্রাপ্তির পরে আমরা "HELO" বার্তাটি পাঠাই, যার কারণে এটি একটি IOException তৈরি করতে পারে।
সংযোগ স্থাপনের ক্ষেত্রে ক্রিয়াকলাপের ক্রমটি লক্ষ্য করুন:
হোস্ট সাইড: ১) adb track-jdwp ২) অ্যাপ প্রসেস ধারণকারী PID গুলির আপডেট করা তালিকা গ্রহণ করুন। ৩) ডিবাগার পোর্ট খুলুন/ফরোয়ার্ড করুন এবং ডিভাইসের সাথে সংযোগ করুন। ৪) হ্যান্ডশেক করুন। ৫) HELO পাঠান এবং প্রতিক্রিয়ার জন্য অপেক্ষা করুন।
ডিভাইস/প্রক্রিয়ার দিক: ক) ফর্ক জাইগোট করুন এবং PID দিয়ে ADB আপডেট করুন। খ) ডিবাগার পোর্ট সংযুক্ত থাকলে APNM পাঠান ("<pre-initialize>")। গ) প্রক্রিয়াটিকে প্রকৃত অ্যাপ্লিকেশন এবং প্যাকেজের সাথে আবদ্ধ করুন। ঘ) ডিবাগার পোর্ট সংযুক্ত থাকলে আপডেট করা APNM পাঠান।
উপরোক্ত দুটি কার্যকরকরণ ক্রম সম্পূর্ণরূপে সমান্তরালভাবে চলে, একমাত্র সীমাবদ্ধতা হল a) 2 এর আগে ঘটে)।
| রিটার্নস | |
|---|---|
JdwpPacket | |
হিপআপডেটস্ট্যাটাস আরম্ভ করুন
public void initializeHeapUpdateStatus ()
isDdmAware সম্পর্কে
public boolean isDdmAware ()
ক্লায়েন্ট VM যদি DDM-সচেতন হয় তাহলে true ফেরত পাঠায়।
সংযোগ স্থাপনের পরেই এখানে কল করার অনুমতি রয়েছে।
| রিটার্নস | |
|---|---|
boolean | |
ডিবাগার সংযুক্ত করা হয়েছে
public boolean isDebuggerAttached ()
যদি বর্তমানে ক্লায়েন্টের সাথে একটি ডিবাগার সংযুক্ত থাকে তবে true ফেরত পাঠায়।
| রিটার্নস | |
|---|---|
boolean | |
হিপআপডেট সক্রিয় আছে
public boolean isHeapUpdateEnabled ()
কোনও হিপ আপডেট সক্ষম আছে কিনা তা ফেরত দেয়।
| রিটার্নস | |
|---|---|
boolean | |
আরও দেখুন:
থ্রেডআপডেট সক্রিয় আছে
public boolean isThreadUpdateEnabled ()
থ্রেড আপডেট সক্রিয় কিনা তা ফেরত দেয়।
| রিটার্নস | |
|---|---|
boolean | |
বৈধ
public boolean isValid ()
এই ClientImpl অ্যাপ্লিকেশন VM-এর সাথে একটি বৈধ সংযোগ আছে কিনা তা ফেরত দেয়।
| রিটার্নস | |
|---|---|
boolean | |
হত্যা করা
public void kill ()
VM-এ একটি kill বার্তা পাঠায়। VM ক্র্যাশ অবস্থায় থাকলে এটি অগত্যা কাজ করে না।
তালিকাভিউরুটস
public void listViewRoots (DebugViewDumpHandler replyHandler)
| পরামিতি | |
|---|---|
replyHandler | DebugViewDumpHandler |
নোটিফাই ভিএমমিরর এক্সিটেড
public void notifyVmMirrorExited ()
ডিবাগার VM মিররগুলি DDMLib এর পিছনের দিকে বেরিয়ে যেতে পারে, যার ফলে বিভিন্ন রেস বা পার্মা- Client ক্ষতির পরিস্থিতি দেখা দেয়। আমাদের DDMLib কে জানাতে হবে যে বর্তমানে সংযুক্ত ডিবাগারটি বেরিয়ে আসছে এবং তার VM মিরর সংযোগটি বন্ধ করে দিচ্ছে।
প্যাকেট ব্যর্থ
public void packetFailed (JdwpPacket reply)
আগের একটি অনুরোধ ব্যর্থ হয়েছে। এটি হল একটি নন-ডিডিএম ক্লায়েন্টের সাথে কথা বলার সময় একটি HELO বার্তার প্রত্যাশিত প্রতিক্রিয়া।
| পরামিতি | |
|---|---|
reply | JdwpPacket |
পড়া
public void read ()
আমাদের চ্যানেল থেকে তথ্য পড়ুন, শুধুমাত্র একটি থ্রেড থেকে কল করা উচিত।
এটি তখন বলা হয় যখন ডেটা উপলব্ধ বলে জানা যায়, এবং আমাদের কাছে এখনও বাফারে একটি সম্পূর্ণ প্যাকেট থাকে না। যদি বাফারটি ধারণক্ষমতা সম্পন্ন হয়, তাহলে এটি প্রসারিত করুন।
নিবন্ধন করুন
public void register (Selector sel)
একজন নির্বাচকের সাথে ক্লায়েন্ট নিবন্ধন করলে, ক্লায়েন্ট তৈরির পরপরই কল করা উচিত।
| পরামিতি | |
|---|---|
sel | Selector |
অনুরোধবরাদ্দ বিবরণ
public void requestAllocationDetails ()
enable enableAllocationTracker(boolean) কল করার পর থেকে null এ সেট করা সমস্ত বরাদ্দ সম্পর্কে তথ্য পাঠানোর জন্য VM-কে একটি অনুরোধ পাঠায়। এটি অ্যাসিঙ্ক্রোনাস।
বরাদ্দ তথ্য ClientData.getAllocations() দ্বারা অ্যাক্সেস করা যেতে পারে। নতুন ডেটা উপলব্ধ রয়েছে এমন বিজ্ঞপ্তি AndroidDebugBridge.clientChanged(com.android.tradefed.device.server.ClientImpl, int) এর মাধ্যমে পাওয়া যাবে যেখানে একটি changeMask থাকবে যার মধ্যে Client.CHANGE_HEAP_ALLOCATIONS মাস্ক থাকবে।
অনুরোধ বরাদ্দের স্থিতি
public void requestAllocationStatus ()
বরাদ্দ ট্র্যাকিংয়ের সক্ষম অবস্থা পাঠানোর জন্য VM-কে একটি অনুরোধ পাঠায়। এটি অ্যাসিঙ্ক্রোনাস।
বরাদ্দের অবস্থা ClientData.getAllocationStatus() দ্বারা অ্যাক্সেস করা যেতে পারে। নতুন স্ট্যাটাসটি উপলব্ধ রয়েছে এমন বিজ্ঞপ্তি AndroidDebugBridge.clientChanged(com.android.tradefed.device.server.ClientImpl, int) এর মাধ্যমে পাওয়া যাবে যেখানে একটি changeMask থাকবে যার মধ্যে Client.CHANGE_HEAP_ALLOCATION_STATUS মাস্ক থাকবে।
অনুরোধ পদ্ধতি প্রোফাইলিং স্ট্যাটাস
public void requestMethodProfilingStatus ()
মেথড প্রোফাইলিংয়ের সক্ষম অবস্থা পাঠানোর জন্য VM-কে একটি অনুরোধ পাঠায়। এটি অ্যাসিঙ্ক্রোনাস।
বরাদ্দের অবস্থা ClientData.getAllocationStatus() দ্বারা অ্যাক্সেস করা যেতে পারে। নতুন স্ট্যাটাসটি উপলব্ধ রয়েছে এমন বিজ্ঞপ্তি AndroidDebugBridge.clientChanged(com.android.tradefed.device.server.ClientImpl, int) এর মাধ্যমে পাওয়া যাবে যেখানে একটি changeMask থাকবে যার মধ্যে Client.CHANGE_HEAP_ALLOCATION_STATUS মাস্ক থাকবে।
অনুরোধনেটিভহিপ তথ্য
public boolean requestNativeHeapInformation ()
একটি নেটিভ হিপ আপডেট অনুরোধ পাঠায়। এটি অ্যাসিঙ্ক্রোনাস।
নেটিভ হিপ তথ্য ClientData.getNativeAllocationList() দ্বারা অ্যাক্সেস করা যেতে পারে। নতুন ডেটা উপলব্ধ রয়েছে এমন বিজ্ঞপ্তি AndroidDebugBridge.clientChanged(com.android.tradefed.device.server.ClientImpl, int) এর মাধ্যমে পাওয়া যাবে যেখানে একটি changeMask থাকবে যার মধ্যে Client.CHANGE_NATIVE_HEAP_DATA মাস্ক থাকবে।
| রিটার্নস | |
|---|---|
boolean | |
অনুরোধ থ্রেডস্ট্যাকট্রেস
public void requestThreadStackTrace (int threadId)
একটি থ্রেড স্ট্যাক ট্রেস আপডেট অনুরোধ পাঠায়। এটি অ্যাসিঙ্ক্রোনাস।
থ্রেডের তথ্য ClientData.getThreads() এবং ThreadInfo.getStackTrace() দ্বারা অ্যাক্সেস করা যেতে পারে।
নতুন ডেটা উপলব্ধ রয়েছে এমন বিজ্ঞপ্তি AndroidDebugBridge.clientChanged(com.android.tradefed.device.server.ClientImpl, int) এর মাধ্যমে পাওয়া যাবে যেখানে একটি changeMask থাকবে যার মধ্যে Client.CHANGE_THREAD_STACKTRACE মাস্ক থাকবে।
| পরামিতি | |
|---|---|
threadId | int |
রিকোয়েস্টথ্রেডআপডেট
public void requestThreadUpdate ()
একটি থ্রেড আপডেট অনুরোধ পাঠায়। এটি অ্যাসিঙ্ক্রোনাস।
থ্রেডের তথ্য ClientData.getThreads() দ্বারা অ্যাক্সেস করা যেতে পারে। নতুন ডেটা উপলব্ধ রয়েছে এমন বিজ্ঞপ্তি AndroidDebugBridge.clientChanged(com.android.tradefed.device.server.ClientImpl, int) এর মাধ্যমে পাওয়া যাবে যেখানে একটি changeMask থাকবে যার মধ্যে Client.CHANGE_THREAD_DATA মাস্ক থাকবে।
সেটহিপইনফোআপডেটসক্রিয়
public void setHeapInfoUpdateEnabled (boolean enabled)
| পরামিতি | |
|---|---|
enabled | boolean |
setHeapSegmentUpdate সক্ষম করা হয়েছে
public void setHeapSegmentUpdateEnabled (boolean enabled)
| পরামিতি | |
|---|---|
enabled | boolean |
সেটহিপআপডেট সক্ষম করা হয়েছে
public void setHeapUpdateEnabled (boolean enabled)
হিপ আপডেট সক্ষম বা অক্ষম করে।
যদি true , তাহলে যেকোনো GC ক্লায়েন্টকে তার হিপ তথ্য পাঠাতে বাধ্য করবে।
হিপ তথ্য ClientData.getVmHeapData() দ্বারা অ্যাক্সেস করা যেতে পারে।
নতুন ডেটা উপলব্ধ রয়েছে এমন বিজ্ঞপ্তি AndroidDebugBridge.clientChanged(com.android.tradefed.device.server.ClientImpl, int) এর মাধ্যমে পাওয়া যাবে যেখানে changeMask এর মান থাকবে Client.CHANGE_HEAP_DATA ।
| পরামিতি | |
|---|---|
enabled | boolean : সক্ষম পতাকা |
সেটথ্রেডআপডেট সক্ষম করা হয়েছে
public void setThreadUpdateEnabled (boolean enabled)
থ্রেড আপডেট সক্ষম বা অক্ষম করে।
যদি true তাহলে VM থ্রেড তথ্য পাঠাতে সক্ষম হবে। থ্রেড তথ্য requestThreadUpdate() দিয়ে অনুরোধ করতে হবে।
| পরামিতি | |
|---|---|
enabled | boolean : সক্ষম পতাকা। |
startMethodTracer সম্পর্কে
public void startMethodTracer ()
স্টার্টওপেনগ্লট্রেসিং
public boolean startOpenGlTracing ()
| রিটার্নস | |
|---|---|
boolean | |
স্টার্টস্যাম্পলিংপ্রোফাইলার
public void startSamplingProfiler (int samplingInterval,
TimeUnit timeUnit)| পরামিতি | |
|---|---|
samplingInterval | int |
timeUnit | TimeUnit |
স্টপমেথডট্রেসার
public void stopMethodTracer ()
স্টপওপেনগ্লট্রেসিং
public boolean stopOpenGlTracing ()
| রিটার্নস | |
|---|---|
boolean | |
স্টপস্যাম্পলিংপ্রোফাইলার
public void stopSamplingProfiler ()
টুস্ট্রিং
public String toString ()
ClientImpl অবজেক্টের একটি স্ট্রিং উপস্থাপনা প্রদান করে।
| রিটার্নস | |
|---|---|
String | |
টগল পদ্ধতি প্রোফাইলিং
public void toggleMethodProfiling ()
এই পদ্ধতিটি অবচিত।
পরিবর্তে startMethodTracer() , stopMethodTracer() , startSamplingProfiler(int, TimeUnit) অথবা stopSamplingProfiler() ব্যবহার করুন।
পদ্ধতি প্রোফাইলিং অবস্থা টগল করে।
আপডেট
public void update (int changeMask)
| পরামিতি | |
|---|---|
changeMask | int |
আপডেট হিপইনফো
public void updateHeapInfo ()
একটি একক হিপ আপডেট চালু করে।
সুরক্ষিত পদ্ধতি
পাঠান
protected void send (JdwpPacket packet)
ক্লায়েন্টকে একটি DDM প্যাকেট পাঠান।
আদর্শভাবে, আমরা এটি একটি একক চ্যানেল লেখার মাধ্যমে করতে পারি। যদি তা না হয়, তাহলে এই প্যাকেটটি সম্পূর্ণ না হওয়া পর্যন্ত আমাদের অন্য কাউকে চ্যানেলে লেখা থেকে বিরত রাখতে হবে, তাই আমরা চ্যানেলে সিঙ্ক্রোনাইজ করি।
আরেকটি লক্ষ্য হল অপ্রয়োজনীয় বাফার কপি এড়ানো, তাই আমরা সরাসরি JdwpPacket এর ByteBuffer থেকে লিখি।
| পরামিতি | |
|---|---|
packet | JdwpPacket |