2016-12-09 11 views
6

मैं सामान्य रूप में इंटेलीजे और जावा के लिए नया हूँ हल नहीं कर सकते। मैं 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' को हल नहीं कर सकते"। मैं "अमान्य कैश और पुनः आरंभ" करने की कोशिश की, लेकिन यह मदद नहीं की, मैं सिंक्रनाइज़ करने की कोशिश की और इस परियोजना के पुनर्निर्माण, लेकिन यह या तो काम नहीं किया।

मुझे समझ नहीं आता जहां इस समस्या से क्योंकि वर्ग निष्पादकों आयात किया जाता है आ रहा है है। इसके अलावा, निष्पादकों के स्थैतिक तरीकों के लिए स्वत: पूर्णता थी। शायद आयात में कोई समस्या है, लेकिन यदि हां, तो मैं इसे कैसे ठीक कर सकता हूं?

+0

मुझे लगता है कि चाहते हैं आप चाहते हैं 'निष्पादित = Executors.newFixedThreadPool (6), एक निर्माता कॉल', यानी 'new' कीवर्ड, बनाता है जिसके बिना संकलक उम्मीद (और एक कन्स्ट्रक्टर को कॉल न करें)। – Thomas

+0

भी कोई Executors.newSingleThreadExecutor (int) विधि है। –

उत्तर

12

कीवर्ड new निकालें इस पंक्ति में:

execute = new Executors.newFixedThreadPool(6); 

यह होना चाहिए:

execute = Executors.newFixedThreadPool(6); 

विधि newFixedThreadPool वर्ग Executors की एक स्थिर तरीका है।

+0

बहुत बहुत धन्यवाद, वास्तव में मैंने कीवर्ड को प्रतिबिंब द्वारा नया लगाया और इस प्रकार इसे ध्यान में नहीं देखा। – Irindul

1

इस लाइन से नए कीवर्ड निकालें:

execute = Executors.newFixedThreadPool(6); 

आपका वाक्य रचना वास्तव में निर्वाहक वर्ग के भीतर एक स्थिर भीतरी वर्ग 'newFixedThreadPool' के निर्माता कॉल करने के लिए कोशिश करता है। वह स्थैतिक आंतरिक वर्ग मौजूद नहीं है। इसके बजाय, आप एक स्थिर कारखाने विधि कॉल करने के लिए है ...

संबंधित मुद्दे