2015-10-07 1 views
-1

Я не знаю, какой тип, этот вопрос может быть, и я просто чувствую себя рискованным спросить его.Ресурсы Release from Waiting Thread Java

Я читал wait notify and notifyall, и там я получил хороший пример о Продюсере и Потребителе. Оба потока взаимосвязаны с использованием wait и notifyall(); Хорошо Понял почему. Но я просто думаю, что если Producer работает, то потребитель ждет даже с использованием ресурсов. Предположим, что продюсеру нужно долго работать, а затем потребитель все еще ждет и использует ресурсы.

Теперь я хочу спросить, есть ли способ освободить ресурсы (CPU/RAM: любые ресурсы, которые используются в ожидании) от потоков, которые ждут? или ожидания никогда не потребляют ресурсы (CPU/RAM)?

+0

зависит от того, что означает средства для освобождения ресурсов. –

+2

Поток, который 'wait()' s не содержит блокировку/блокирует ресурс, поэтому ничего не освобождать. – zapl

+0

@zapl, но также в состоянии ожидания ... и ожидание означает ожидание (с использованием ресурсов ЦП) – UnKnown

ответ

2

Если у вас нет очень необычной ситуации, когда у вас есть продемонстрированная проблема, вы должны просто делать что-то обычным способом. Ничто в вашем вопросе не предлагает ничего необычного в вашем случае использования, поэтому нет причин пытаться найти какое-то необычное решение.

Не делайте вещи сложными только ради фиксации какой-то мнимой проблемы, о которой вы не имеете.

+0

Я не просто спросил решение, я также спросил причину, если какой-либо тогда, каким должно быть решение. Любое Как спасибо, я понял суть комментария zapl. – UnKnown