Quando si popola la coda dal contenuto del file, la profondità non sembra mai aumentare, poiché gli elementi non vengono aggiunti in questa implementazione.Coda piena, profondità della Coda bloccante, chiarimento necessario
BlockingQueue<String> q = new SynchronousQueue<String>();
...
fstream = new FileInputStream("/path/to/file.txt");
...
while ((line = br.readLine()) != null) {
if (q.offer(line))
System.out.println("Depth: " + q.size()); //0
}
Quando si sostituisce offer
con add
, un'eccezione se gettato
Exception in thread "main" java.lang.IllegalStateException: Queue full
...
Che cosa sto facendo di sbagliato per favore? Perché la coda è piena immediatamente, dopo l'inserimento del primo elemento?
RTFM ftw. Grazie Mat. Accetterà in 10 minuti – JAM
In effetti, non puoi nemmeno RESPIRARE in presenza di una coda sincrona in quanto NON C'È ARIA DA RESPIRARE. Una coda sincrona è tutto e niente, è ovunque e da nessuna parte. Le implicazioni metafisiche della coda sincrona non possono essere comprese dai semplici abitanti della terra. – Tudor