मैं सामान्य रूप में इंटेलीजे और जावा के लिए नया हूँ हल नहीं कर सकते। मैं multithreading सीखने की कोशिश कर रहा हूं और मैं एक्जिक्यूटर्स कक्षा में आया था।इंटेलीजे प्रतीक "newFixedThreadPool"
तो मैं यह परीक्षण करना चाहता था, यहाँ मेरी कोड का एक नमूना है।
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class LegController {
private List<Runnable> legs;
private ExecutorService execute;
public LegController() {
legs = new ArrayList<>();
for (int i = 0; i < 6; i++) {
legs.add(LegFactory.getLeg("LEFT"));
}
execute = new Executors.newFixedThreadPool(6);
}
public void start(){
//TODO
}
}
लेकिन मैं कोई त्रुटि मिलती है: "प्रतीक 'newFixedThreadPool' को हल नहीं कर सकते"। मैं "अमान्य कैश और पुनः आरंभ" करने की कोशिश की, लेकिन यह मदद नहीं की, मैं सिंक्रनाइज़ करने की कोशिश की और इस परियोजना के पुनर्निर्माण, लेकिन यह या तो काम नहीं किया।
मुझे समझ नहीं आता जहां इस समस्या से क्योंकि वर्ग निष्पादकों आयात किया जाता है आ रहा है है। इसके अलावा, निष्पादकों के स्थैतिक तरीकों के लिए स्वत: पूर्णता थी। शायद आयात में कोई समस्या है, लेकिन यदि हां, तो मैं इसे कैसे ठीक कर सकता हूं?
मुझे लगता है कि चाहते हैं आप चाहते हैं 'निष्पादित = Executors.newFixedThreadPool (6), एक निर्माता कॉल', यानी 'new' कीवर्ड, बनाता है जिसके बिना संकलक उम्मीद (और एक कन्स्ट्रक्टर को कॉल न करें)। – Thomas
भी कोई Executors.newSingleThreadExecutor (int) विधि है। –