wait();
notifyAll();
notify();
synchronized void DoWhileCondition() {
обязательно [while !условие wait]
//выполнить что-либо
}
synchronized void ChangeCondition() {
//выполнить что-либо
notifyAll();
}
Пример 7.
class Cell
{
Cell next;
Object Item;
Cell(object item ) {this.item = item;}
}
class ? {
private Cell head, tail;
public synchronized void add(object o)
{
Cell p = new Cell(o);
if (null==tail)
head = p;
else
tail.next = p;
p.next = null;
tail = p;
notifyAll();
}
public synchronized object take() throws ?Exception
{
while (null ==head)
wait();
Cell p = head;
head = head.next;
if (null = head)
tail = null;
return p.item;
}
}
1.4. I/O
-Символьные потоки данных
-Байтовые потоки данных
Симв. последовательность 16-битовых слов – Unicode.
I/O
Байтовые потоки называют потоками ввода и вывода.
Символьные потоки называют потоками записи и чтения.
1) Типы общего назначения
2) Классы, определяющие классы потоков (???? 1. Фильтровать ??? 2. Буферизовать)
3) Специализированность – для простоых типов, строк.
4) ?? Для обр. файловых данных ???
5) Поддержка сериализации
Все байтовые потоки поддерживают механизмы открытие и закрытия.
Поток открывается при … ???