Я пишу небольшое многопоточное клиент-серверное Java-приложение. Когда сервер запускается, он создает некоторые объекты, такие как объект для подключения к БД, другой для управления пользователями и так далее. Мне нужно, чтобы они были доступны из каждого потока, который я запускаю. Как правильно это сделать? Передача объекта в каждый поток следующим образом:
public class Server{
private ObjectType1 object1;
private ObjectType2 object2;
public void run{
.......
new ServerThread(object1,object2);
.......
}
}
или передача сервера каждому потоку:
public class Server{
private TypeObject1 object1;
private TypeObject2 object2;
public TypeObject1 getObject1(){....}
public TypeObject2 getObject2(){...}
public void run(){
.....
new ServerThread(this);
.....
}
}
а затем из объектов доступа к потоку таким образом?
server.getObject1();