gnodet commented on PR #1302:
URL: https://github.com/apache/maven/pull/1302#issuecomment-1884946363

   > I think this is a good change despite no "speedup" sensed: the original 
class uses `synchronized` on each listener method, meaning at one time only one 
thread can enter only one method... and this MAY (most probably is) coggle 
resolver when uses multiple threads.
   
   That was my original intention.  However, looking again at what we have 
here, I'm not sure it fulfils the initial intention.  Even if the synchronized 
keyword has been removed from the main methods, I had to add back some lock 
because some updates are asynchronous (like initiated, progress, corrupted) but 
some need the display to be changed synchronously when the last resource 
transfer is finished (so that the log can continue as normal). 
   Re-reading, I even think there may be cases where the output will be wrong, 
as the test to check if the updated transfer is the _last_ one looks wrong, as 
it does not use an up-to-date data.  The removal of the entry is done in the 
display method, which means if two resources are completed very shortly, the 
test will assume there are still some ongoing resources and the display won't 
be updated.
   
   This needs a bit more work imho.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to