我已经开始学习 Java 中的并发和线程。我知道同步的基础知识(即它的作用)。从概念上讲,我理解它提供了对具有 Java 中的多个线程的共享资源的互斥访问。但是当面对像下面这样的例子时,我很困惑让它同步是否是个好主意。我知道代码的关键部分应该同步,并且这个关键字不应该被过度使用,否则会影响性能。
public static synchronized List<AClass> sortA(AClass[] aArray)
{
List<AClass> aObj = getList(aArray);
Collections.sort(aObj, new AComparator());
return aObj;
}
public static synchronized List<AClass> getList(AClass[] anArray)
{
//It converts an array to a list and returns
}