powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Собеседование по многопоточности.
30 сообщений из 30, показаны все 2 страниц
Собеседование по многопоточности.
    #38613516
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Представим, что вы проводите интервью по многопоточности.

Что бы вы спросили?
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613524
DEVcoach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1) JMM;
2) synchronized/volatile/final;
3) Lock/RWLock/CountDownLatch/Semaphore;
4) Atomic*;
5) Подходы к синхронизации коллекций (Collections.synchronized*, copy-on-write, ConcurrentHash*, Blocking*).
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613548
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DEVcoach,

а если немного более конкретно?


я не совсем про final понял.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613554
DEVcoach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
redwhite90 ,
Что именно конкретнее? Как работает final знаете? Гарантии видимости, freeze, и т.д.?
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613560
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DEVcoach,

ну вы ж не скажете просто JMM и всё....

final применительно к многопоточности.... нет, не слышал
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613621
Фотография schwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В реальности спрашивают про модификаторы волатайл, синхронайздед, wait/notify, а также классы из j.u.c..
Решить задачку про ноги робота, написать ограниченную сверху очередь и им подобные. Самые "крутые" могут спросить написать какой-нибудь lock-free стэк. И т.д. и т.п.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613634
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
redwhite90DEVcoach,

а если немного более конкретно?


я не совсем про final понял.

Когда синхронизиш по не FINAL -объекту, оно ругаицо.
И в общем правильно.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613676
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
schwa,

авторРешить задачку про ноги робота, написать ограниченную сверху очередь и им подобные

а можно условие?
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613696
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivredwhite90DEVcoach,

а если немного более конкретно?


я не совсем про final понял.

Когда синхронизиш по не FINAL -объекту, оно ругаицо.
И в общем правильно.

Да нет, причем тут это. Тут речь о безопасной публикации объектов и частично immutable.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613708
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Господа, я уже понял, что вы умные все. может конкретики немного?
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613727
DEVcoach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MasterZivКогда синхронизиш по не FINAL -объекту, оно ругаицо.
И в общем правильно.Не совсем понял, о чем вы :) Я имел ввиду гарантии видимости при работе с final переменными, а не синхронизацию на них.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613799
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
redwhite90Господа, я уже понял, что вы умные все. может конкретики немного?

просто прочитай Java Concurrency in practice. Вдумчиво, после 3-го прочтения можно и поговорить.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613828
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
забыл никredwhite90Господа, я уже понял, что вы умные все. может конкретики немного?

просто прочитай Java Concurrency in practice. Вдумчиво, после 3-го прочтения можно и поговорить.

а если я ее не читал, то не достоин участвовать в дискуссии??

я ж не что-то глобальное спросил. Спросил про слово final. Неужели так сложно пару предложений написать.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613835
DEVcoach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
redwhite90 ,
Да никто не против, что бы вы задавали вопросы. Форум, по сути, для этого и создан. Но задавать вопросы можно по-разному. Одно дело спросить "а что такое final?". На такой вопрос вам будут отвечать достаточно неохотно. И совсем другое дело спросить "вот я почитал, что Java гарантирует видимость final полей в объекте; а есть ли гарантия, что я увижу внутренности final объекта, или же есть гарантии только по видимости самой ссылки?". На такой вопрос вам ответят гораздо охотнее, так как из него следует, что вы заинтересовались темой, что-то почитали сами, что-то поняли, а что-то нет. И вот этот самый непонятный момент вы и спрашиваете.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613886
avp.mk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
redwhite90я ж не что-то глобальное спросил. Спросил про слово final. Неужели так сложно пару предложений написать.
http://youtube.com/watch?v=qeCGjVf780s#t=1973
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613944
Фотография schwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
redwhite90schwa,

авторРешить задачку про ноги робота, написать ограниченную сверху очередь и им подобные

а можно условие?
Дан код, который управляет роботом - если выводится left, то робот двигает левую ногу, если right, то правую. Необходимо модифицировать код ниже, чтобы обеспечить порядок движения ног робота. Итоговый порядок должен быть таков - сначала робот двигает левую ногу, а потом правую.
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
class Leg implements Runnable {

	final String name;

	Leg(String name) {
		this.name = name;
	}

	public void run() {
		while(true) {
			System.out.println(name);
		}
	}
}

public class Robot {

	public static void main(String[] args) {
		new Thread(new Leg("left")).start();
		new Thread(new Leg("right")).start();
	}

}
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613950
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вариант "отказаться от многопоточности" - считается ответом?
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613976
Alexey Tomin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
redwhite90Представим, что вы проводите интервью по многопоточности.

Что бы вы спросили?

Во-первых то, что сам хорошо понимаю.
Так что когда Вы разберётесь со списков DEVcoach - то поймёте, что задавать.

Понятное дело, что вопрос будет не "расскажите о JMM", а что-нибудь типа "о чём вообще JMM", "зачем она нужна", и т.п., а потом уже- в зависимости от ответов. Даже можно начать с вопроса "какие проблемы возникают при многопоточности и какие принципы решения этих проблем знаете".
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613977
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovВариант "отказаться от многопоточности" - считается ответом?
Когда человек идет, то его мозг сосредоточен только на движении ногами?
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38613984
Фотография schwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovВариант "отказаться от многопоточности" - считается ответом?
Нет конечно же.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38614412
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanКогда человек идет, то его мозг сосредоточен только на движении ногами?За координацию движений отвечает, насколько мне известно, мозжечок.
Мне просто не очень понятно, почему для задачи "шагать" запускается два отдельных потока, хотя условие "поочерёдно переставлять ноги" тривиально реализует цикл, в котором вообще нет проблемы "синхронизовать два потока"?
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38614481
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovЗа координацию движений отвечает, насколько мне известно, мозжечок.
Кроме координации во внешнем мире происходят много разных событий, за которыми следят все органы чувств и это происходит параллельно.
Basil A. SidorovМне просто не очень понятно, почему для задачи "шагать" запускается два отдельных потока
На самом деле может-же быть несколько десятков?
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38614509
Фотография schwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovwadmanКогда человек идет, то его мозг сосредоточен только на движении ногами?За координацию движений отвечает, насколько мне известно, мозжечок.
Мне просто не очень понятно, почему для задачи "шагать" запускается два отдельных потока, хотя условие "поочерёдно переставлять ноги" тривиально реализует цикл, в котором вообще нет проблемы "синхронизовать два потока"?
Это просто постановка такая. Задача состоит в том, чтобы выяснить, а вообще человек может написать многопоточный код, который реализует хотя бы такой тривиальный алгоритм, или нет.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38614529
redwhite90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,

wadmanРешить задачку про ноги робота
видимо это на wait/notify.
сходил левой, уснул пронотифаил правую и т.д.

wadmanнаписать ограниченную сверху очередь
нет мыслей причём тут многопоточность
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38614632
Фотография schwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
redwhite90,

Необходимо написать потокобезопасную очередь с ограниченным размером и двумя методами put и take (семантика этих методов аналогична одноименным методам BlockingQueue)
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38614657
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanНа самом деле может-же быть несколько десятков?И что?
Для реализации "ходьба сороканожки" вы станете запускать сорок потоков и героически бороть проблемы синхронизации или, всё-таки, напишите детерминированный конечный автомат?
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38614658
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schwaЭто просто постановка такаяНикогда не понимал постановок "продемонстрируйте, что можете сделать через анус".
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38614722
DEVcoach
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Basil A. Sidorov ,
С одной стороны, я с вами согласен - мне тоже очень уж режет глаз эта задача про ноги робота. Но с другой стороны, мне самому сейчас приходится придумывать задачи на многопоточность. И я скажу, что это ооочень непросто. Придумать хорошую задачу - это целая эпопея. Понятно, что не во всех конторах хотят с этим заморачиваться. Отсюда и такие абсурдные задачи.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38614736
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DEVcoachмне самому сейчас приходится придумывать задачи на многопоточность. И я скажу, что это ооочень непросто. Придумать хорошую задачу - это целая эпопеяНу, вроде, классика про что-то вроде: "у клиента банка есть счёт, к которому привязаны кредитка и онлайн-клиент. Реализуйте корректную работу для ситуации одновременного снятия наличных по карточке, перевода средств через онлайн-клиент и списания банком суммы ежемесячного обслуживания счёта".
Ну или сервлет, который умеет код 100 из HTTP/1.1 и может одновременно и читать запрос клиента и формировать ответ.
...
Рейтинг: 0 / 0
Собеседование по многопоточности.
    #38615212
MaxNevermind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovDEVcoachмне самому сейчас приходится придумывать задачи на многопоточность. И я скажу, что это ооочень непросто. Придумать хорошую задачу - это целая эпопеяНу, вроде, классика про что-то вроде: "у клиента банка есть счёт, к которому привязаны кредитка и онлайн-клиент. Реализуйте корректную работу для ситуации одновременного снятия наличных по карточке, перевода средств через онлайн-клиент и списания банком суммы ежемесячного обслуживания счёта".
...
Так блокировка же будет в БД делаться, нет? Или рассматривать ситуацию как будто данные по счету клиента хранятся в памяти а не СУБД?
...
Рейтинг: 0 / 0
30 сообщений из 30, показаны все 2 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / Собеседование по многопоточности.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]