Made arbitraryDataFileHashResponses final, and use .sort() rather than .stream() to avoid new instance creation.

This commit is contained in:
CalDescent 2022-03-12 09:43:56 +00:00
parent c65de74d13
commit f0d9982ee4
2 changed files with 2 additions and 4 deletions

View File

@ -48,7 +48,7 @@ public class ArbitraryDataFileManager extends Thread {
/**
* List to keep track of any arbitrary data file hash responses
*/
public List<ArbitraryFileListResponseInfo> arbitraryDataFileHashResponses = Collections.synchronizedList(new ArrayList<>());
public final List<ArbitraryFileListResponseInfo> arbitraryDataFileHashResponses = Collections.synchronizedList(new ArrayList<>());
/**
* List to keep track of peers potentially available for direct connections, based on recent requests

View File

@ -55,9 +55,7 @@ public class ArbitraryDataFileRequestThread implements Runnable {
// Sort by lowest number of node hops first
Comparator<ArbitraryFileListResponseInfo> lowestHopsFirstComparator =
Comparator.comparingInt(ArbitraryFileListResponseInfo::getRequestHops);
List<ArbitraryFileListResponseInfo> sortedResponses = arbitraryDataFileManager.arbitraryDataFileHashResponses
.stream().sorted(lowestHopsFirstComparator).collect(Collectors.toList());
arbitraryDataFileManager.arbitraryDataFileHashResponses = Collections.synchronizedList(sortedResponses);
arbitraryDataFileManager.arbitraryDataFileHashResponses.sort(lowestHopsFirstComparator);
Iterator iterator = arbitraryDataFileManager.arbitraryDataFileHashResponses.iterator();
while (iterator.hasNext()) {