eclipse-archived / ceylon-ide-eclipse

Eclipse Plugin for Ceylon
http://ceylon-lang.org/documentation/ide
Eclipse Public License 1.0
59 stars 28 forks source link

Use only one cleanup thread #1493

Open FroMage opened 9 years ago

FroMage commented 9 years ago

We should be able to use only a single one of these:

"Thread-22197" daemon prio=10 tid=0x00007f0de01e3800 nid=0x36fe in Object.wait() [0x00007f0e0ac7a000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x00000007af622040> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)
    - locked <0x00000007af622040> (a java.lang.ref.ReferenceQueue$Lock)
    at com.redhat.ceylon.ide.common.model.ModuleDependencies$CleaningRunnable.run(ModuleDependencies.java:46)
    at java.lang.Thread.run(Thread.java:745)

   Locked ownable synchronizers:
    - None

Rather than the ten I have on my IDE.

gavinking commented 9 years ago

We don't start our own threads.

davidfestal commented 9 years ago

@gavinking : we do here, but in a very controlled way and for a very specific and internal purpose. Note that :

Afaik these threads get correctly cleaned (ie don't constantly increase, clean build after clean build).

Of course if anyone can prove me the contrary, I'll assign the 1.2 milestone and make this issue a high-priority one.

gavinking commented 9 years ago

Oh, ok.