كيفية إرسال إشارة إلى JVM التي أتاحتها المبادرة JNI_CreateJavavm؟
-
20-09-2019 - |
سؤال
هل هناك أي احتمال أن أستطيع أن ترسل مباشرة إشارة إلى جهاز جافا الافتراضية الذي يتم إنشاؤه عن طريق الاتصال JVM_CreateJavavm
في الأصلي C / رمز C ++؟
ومنها مثلا:
لعملية جافا العادية، ويقول معرف المنتج لها هو 12345، ويمكن أن يرسل إشارة 3 إلى مثل هذا ... قتل -3 12345، وأتمنى أن يؤدي javacore أو heapdump عن طريق تغيير تكوينات JVM.
ولكن إذا تم إنشاء JVM من خلال JNI API وملفوفة داخل تطبيق C / C ++، PID فقط عملية الأصلي هو واضح، في هذه الحالة إذا أنا أرسل إشارة إلى أن عملية، والعملية برمتها يتم إنهاء فقط ويبدو أن هذا JVM لا يمكن الحصول على إشارة على الإطلاق.
وشكرا مقدما ...
المحلول
ولا. لا يوجد أي عملية منفصلة لJVM. وJVM هو مجرد تشغيل في العملية التي يطلق عليها. لا أعتقد أن الشمس يوثق طريقة لاستخدام تلك معالجات الإشارات عبر واجهة الاحتجاج.