جافا ما يعادل شوكة في جافا مهمة من النمل ؟

StackOverflow https://stackoverflow.com/questions/857236

  •  21-08-2019
  •  | 
  •  

سؤال

النمل مهمة جافا يوفر fork المعلمة التي ، بحكم التعريف "إذا تم تمكين يتسبب في فئة التنفيذ في آخر VM".كما أننا نتعامل مع كمية كبيرة من البيانات ، ووضع هذه المعلمة انقذنا من نفاد Java الفضاء.
نحن نريد أن تكون قادرة على أن تفعل الشيء نفسه من خلال فئة Java.ما يمكن أن يكون أفضل طريقة لتحقيق الأداء الوظيفي على النحو المنصوص عليه من قبل fork?

هل كانت مفيدة؟

المحلول

تنفيذ آخر عملية جافا.باستخدام ProcessBuilder الفئة ، على سبيل المثال.

http://java.sun.com/javase/6/docs/api/java/lang/ProcessBuilder.html

يمكنك تشغيل العديد من العمليات المنفذة كما يحلو لك.جعل لهم وجود مستقل الرئيسي الدرجة القيام بمهامهم من أن الطبقة الرئيسية ، للأقلاع عن التدخين عند اكتمال المهمة.

سيكون لديك لمعرفة classpath ، موقع جافا الثنائية على النظام, ولكن هذا للتنفيذ.

أعتقد أنك يمكن حتى أن يتم إعلامك عندما الكاملة عبر هذه العملية.waitFor().

نصائح أخرى

إذا نظرتم الى شفرة المصدر ant، عندما fork هو true، ثم أنها مجرد يلف مهمة Execute وفي نهاية المطاف، الرمز الذي يحصل على استدعاء هو

Runtime.getRuntime().exec(cmd, env);

وتنزيل وسوف القاء نظرة على شفرة المصدر لorg.apache.tools.ant.taskdefs.Java وorg.apache.tools.ant.taskdefs.Execute تعطيك بعض المؤشرات كبيرة في العثور على مكان للتنفيذ لتشغيل في منصة وسيلة مستقلة، وما إلى ذلك.

وأعتقد أنك يمكن استخدامها مباشرة في API النملة ... النمل يمكن استخدامها مباشرة في فئة Java. وجافادوك متاح في توزيعها ثنائي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top