मैं प्रसंस्करण समय को कम करने के लिए 'movingBeacons' सूची में प्रत्येक तत्व के लिए calculation() नीचे calculateKalmanValues() में एक साथ कॉल करना चाहता हूं। मुझे लगता है कि जावा stream.parallel() आदर्श समाधान है।

public void calculation(){
           // do some think
}

// यह वह विधि है जिसे मैं गणना कहता हूं () // चलती बीकन सूची में प्रत्येक तत्व के लिए एक साथ गणना विधि कहा जाना चाहिए

public void calculateKalmanValues()  {
       List<String> movingBeacons=incomingBtRssiRepository.movingBeacons();

       movingBeacons.forEach.parallel()
}

जावा स्ट्रीम का उपयोग करके। समानांतर () या मल्टीथ्रेडिंग।

0
Terance 7 अप्रैल 2019, 17:15

1 उत्तर

सबसे बढ़िया उत्तर

आप समानांतर धारा का उपयोग करने का प्रयास कर सकते हैं:

List<String> movingBeacons = incomingBtRssiRepository.movingBeacons();
movingBeacons.parallelStream()
    .forEach(s -> s.calculation());

लेकिन ध्यान दें कि समानांतर धाराएँ हमेशा धारावाहिक संचालन को गति नहीं दे सकती हैं। चेतावनी के लिए दस्तावेज देखें।

3
Tim Biegeleisen 7 अप्रैल 2019, 14:19