Мені було цікаво, чи є у вас статичний метод, який не синхронізований, але не змінює жодних статичних змінних, це безпечно для потоків? Що робити, якщо метод створює локальні змінні всередині нього? Наприклад, чи безпечний такий код потоку?
public static String[] makeStringArray( String a, String b ){
return new String[]{ a, b };
}
Отже, якщо у мене є дві нитки, які постійно і одночасно називають цей метод, один з собаками (скажімо, "великий датчанин" і "бичачий собака"), а інший з котами (скажімо, "персидський" і "сіамський"), коли-небудь я отримаю котів і собак в одному масиві? Або коти і собаки ніколи не будуть знаходитися в одній і тій же позиції методу одночасно?