Зачем кому-либо использовать конструктор без аргументов Java Thread?

В какой ситуации можно было бы использовать конструктор без аргументов класса Java Thread? API говорит:

Этот конструктор имеет тот же эффект, что и Thread (null, null, gname), где gname - вновь сгенерированное имя.

Исправьте меня, если я ошибаюсь, но я думаю, что цель потока не может быть изменена после создания экземпляра нового объекта Thread. Если цель равна null, то метод запуска не сделает ничего правильного?

Зачем использовать этот конструктор?

-121--1784994- Сложность stl deque:: insert () Я узнал сложность deque:: insert () из стандарта C++ 2003 (глава 23.2.1.3) как

Я узнал сложность deque:: insert () из стандарта C++ 2003 (глава 23.2.1.3) следующим образом:

В худшем случае для вставки одного элемента в deque требуется время, линейное в минимуме расстояния от точки вставки до начала deque и расстояния от точки вставки до конца deque

Я всегда понимаю реализацию stl deque как совокупность фрагментов памяти. Следовательно, вставка влияет только на элементы в том же блоке памяти, что и позиция вставки. Мой вопрос в том, что означает стандарт под «линейным в минимуме расстояния от точки вставки до начала декэ и расстояния от точки вставки до конца декэ»?

Я понимаю, что стандарт C++ не обеспечивает определенную реализацию декэ. Сложность как раз для худшего случая. Однако в фактической реализации в компиляторах он является линейным к количеству элементов в блоке памяти, которое может изменяться для различных размеров элементов.

Другое предположение может заключаться в том, что, поскольку insert () аннулирует все итераторы, deque необходимо обновить все итераторы. Поэтому он линейный.

6
задан Sullivan Risk 22 March 2016 в 23:19
поделиться