🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.java
Article #153141

Dodawanie do kolejki SynchronousQueue

#153141
From: pamysz
Date: Thu, 17 Nov 2011 16:01
70 lines
3604 bytes
W momencie wykonywania instrukcji : kolejkaSQ.put(obiekt) program
zawiesza się.
Dla kolejki LinkedBlockingQueue wszystko jest ok.
Kiedyś (przed reinstalacją NB i JDK) wszystko działało.
Teraz jest NetBeans 7.0.1, Java 1.6.0_24.
Poniżej kod klasy:
package testkolejki;

import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.SynchronousQueue;
import java.util.logging.Level;
import java.util.logging.Logger;

public class TestKolejki {

    class OnOf {
        boolean on;
        public OnOf(boolean on)
        {
            this.on = on;
        }
    }
    public static void main(String[] args)
    {
        LinkedBlockingQueue<OnOf> kolejkaLQ = new
LinkedBlockingQueue();
        SynchronousQueue<OnOf> kolejkaSQ = new SynchronousQueue();
        TestKolejki tk = new TestKolejki();
        OnOf o1 = tk.new OnOf(true);
        OnOf o2 = tk.new OnOf(false);
        OnOf oN = tk.new OnOf(false);
        //----------------------------------------------------------------------
        System.out.println("1. Kolejka LQ pusta = " +
kolejkaLQ.isEmpty());
        System.out.println("1. Kolejka SQ pusta = " +
kolejkaSQ.isEmpty());
        System.out.println("Adres ok1 = " + o1.hashCode() + ",  " +
o1.toString());
        System.out.println("Adres ok2 = " + o2.hashCode() + ",  " +
o2.toString());
        System.out.println("---------- Koniec deklaracji
-----------------------------------------");
        try
        {
            kolejkaLQ.put(o2);
            System.out.println("2. Kolejka LQ pusta = " +
kolejkaLQ.isEmpty());
            kolejkaSQ.put(o1);// tutaj program się wiesza
            System.out.println("2. Kolejka SQ pusta = " +
kolejkaSQ.isEmpty());
            System.out.println("---------- Koniec dodawania do kolejki
-----------------------------------------");
            oN = kolejkaLQ.take();

        } catch (InterruptedException ex) {
            System.out.println("Błąd !!!!!!!!!!!!!!!!!");
 
Logger.getLogger(TestKolejki.class.getName()).log(Level.SEVERE, null,
ex);
        }
        System.out.println("3. Kolejka LQ pusta = " +
kolejkaLQ.isEmpty() + ",  okN: " + oN.toString());
        System.out.println("3. Kolejka SQ pusta = " +
kolejkaSQ.isEmpty());
        System.out.println("-------- Koniec programu
-------------------------------------------");
        //----------------------------------------------------------------------
    }
}
Z góry dziękuję za pomoc.
Technical Details
Message-ID: <92f306da-2956-452f-bc70-79d91cf3a8f6@p1g2000yqh.googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!postnews.google.com!p1g2000yqh.googlegroups.com!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!postnews.google.com!p1g2000yqh.googlegroups.com!not-for-mail
From: pamysz <pamysz1966@gmail.com>
Newsgroups: pl.comp.lang.java
Subject: Dodawanie do kolejki SynchronousQueue
Date: Thu, 17 Nov 2011 08:01:08 -0800 (PST)
Organization: http://groups.google.com
Lines: 72
Message-ID: <92f306da-2956-452f-bc70-79d91cf3a8f6@p1g2000yqh.googlegroups.com>
NNTP-Posting-Host: 77.237.0.224
Mime-Version: 1.0
X-Trace: posting.google.com 1321546074 23726 127.0.0.1 (17 Nov 2011 16:07:54 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Thu, 17 Nov 2011 16:07:54 +0000 (UTC)
Complaints-To: groups-abuse@google.com
Injection-Info: p1g2000yqh.googlegroups.com; posting-host=77.237.0.224; posting-account=9BfatQoAAAAF01RXcwJ-F5Osfu9PDMLN
User-Agent: G2/1.0
X-Google-Web-Client: true
X-Google-Header-Order: UHALERCNK
X-HTTP-UserAgent: Opera/9.80 (Windows NT 5.1; U; pl) Presto/2.9.168 Version/11.52,gzip(gfe)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit