title: SwingWorker: when exactly is called done method?
body: <p>Javadoc of the <code>done()</code> method of <code>SwingWorker:</code><br></p>
  
  <blockquote>
    <p>Executed on the Event Dispatch Thread after the doInBackground method
    is finished.</p>
  </blockquote>
  
  <p>I've clues that it is not true in the case of canceled worker.<br>
  <code>Done</code> is called in each case (normal termination or cancellation) but when <code>cancelled</code> it is <strong>not enqueued</strong> to the EDT, as it happens for normal termination.</p>
  
  <p>Is there some more precise analisis on when <code>done</code> is called in the case that a <code>SwingWorker</code> is cancelled?</p>
  
  <p>Clarification:
  this question is <strong>NOT</strong> on how to <code>cancel</code> a <code>SwingWorker</code>. Here it is assumed that the <code>SwingWorker</code> is cancelled in the right way.<br>
  And it is <strong>NOT</strong> about thread still working when they are supposed to be finished.</p>