DIR обозначает направление, которое позволяет вам читать файлы каталогов и использовать их в своем проекте django. например, посмотрите на эту строку кода:
'DIRS': [os.path.join(BASE_DIR, 'templates')],
это позволяет вам тоже читать все файлы в папке с шаблонами в вашем каталоге и отображать ваши шаблоны как yourHTMLfile.html или другие, а также может иметь несколько значений. [ 112]
public class LimitClass {
private static List<LimitClass> ObjectPool = new ArrayList<LimitClass>();
public static int objCount = 0;
private static Random randomizer = new Random();
private LimitClass(){
objCount++;
}
public static synchronized LimitClass getLimInstance(){
if(objCount < 3 ){
LimitClass lc = new LimitClass();
ObjectPool.add(lc);
return lc;
}
return ObjectPool.get(randomizer.nextInt()%3);
}
}
public class LimitObjectCreationTest {
public static void main(String[] args) {
LimitClass obj1 = LimitClass.getLimInstance();
LimitClass obj2 = LimitClass.getLimInstance();
LimitClass obj3 = LimitClass.getLimInstance();
LimitClass obj4 = LimitClass.getLimInstance();
LimitClass obj5 = LimitClass.getLimInstance();
LimitClass obj6 = LimitClass.getLimInstance();
System.out.println(obj1);
System.out.println(obj2);
System.out.println(obj3);
System.out.println(obj4);
System.out.println(obj5);
System.out.println(obj6);
System.out.println(obj3);
}
}
LimitClass@1788a393
LimitClass@460c2da6
LimitClass@4283a56d
LimitClass@460c2da6
LimitClass@1788a393
LimitClass@4283a56d
LimitClass@4283a56d
Вам нужен модифицированный синглтон. См. Это - тот же OOPS (Шаблоны проектирования)
Заводской шаблон - лучший вариант. Или можно использовать статический счетчик. Необходимо позаботиться о безопасности нитей.
Создайте экземпляр вашего класса через фабрику (см. Шаблоны проектирования) и ограничьте его до 3 экземпляров, используя простой счетчик.
Вы также можете взглянуть на ObjectPool из Apache Commons. Исходный код находится в свободном доступе...