Multithreading Java пара вопросов

298
12 июня 2017, 20:56

Добрый день. Недавно начал изучать java по книге Г.Шилдта "Java 8". Дошел до Fork/Join и появились несколько вопросов по многопоточности. Отдельно вроде все понятно, но картина в целом пока вырисовывается смутно. Был бы признателен за ответы. Попробую задать их в форме моих предположений, а вы поправьте меня, если где то не прав. Заранее спасибо.

  1. Так как изучал по книге - первое с чем пришлось столкнуться - это Thread, Runnable, synchronized и т.д. Потом дошел до concurrent библиотеки и появились вопросы. Насколько я сейчас понимаю, классы concurrent - это просто более абстрактная обертка для класса Thread и его методов? Что интерфейс Lock внутри себя использует те же synchronized, wait(), notify() и т.д.?
  2. Соответственно, конструкции Fork/Join используют внутри классы concurrent? То есть ForkJoinPool.execute() неявно использует ExecutorService, который, в свою очередь, создает Thread'ы?
  3. Есть ли разница в хардварной реализации многопоточности между использованием стандартных конструкций на Thread/Runnable и Fork/Join? То есть, если я запущу второй Thread на двухядерном процессоре, то JVM запустит его на втором ядре? И если я запущу new ForkJoinPool(8) на двухядерном процессоре с четырьмя тредами, то 4 потока из 8-и реализуются квантированием времени?
  4. Могу ли я распараллелить потоки на двухядерном процессоре так, чтобы все потоки исполнялись на одном ядре? Как это указать явно?
READ ALSO
Динамическое обновление данных в RecyclerView из другого потока

Динамическое обновление данных в RecyclerView из другого потока

Здравствуйте, у меня есть UI поток, в нем отображается RecyclerView, и есть другой поток, в нем грузятся файлы, так вот, по мере загрузки файла я обновляю...

427
Отправить get запрос и получить ответ

Отправить get запрос и получить ответ

Как отправить Get запрос на сервер (К примеру: http://testcom/names

269
Не работает JacksonXmlElementWrapper

Не работает JacksonXmlElementWrapper

Пытаюсь распарсить строку xml следующим образом:

389
Что понимается под единым интерфейсом в REST?

Что понимается под единым интерфейсом в REST?

Начал разбираться с REST архитектурой, и среди ограничений есть:

298