| <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
| <meta name="GENERATOR" content="Microsoft FrontPage 4.0"> |
| <title>Concurrency/Background Operation Details</title> |
| <link rel="stylesheet" href="http://dev.eclipse.org/default_style.css" type="text/css"> |
| </head> |
| <body text="#000000" bgcolor="#FFFFFF"> |
| |
| <table BORDER=0 CELLSPACING=5 CELLPADDING=2 WIDTH="100%" > |
| <tr> |
| <td ALIGN=LEFT VALIGN=TOP COLSPAN="2" BGCOLOR="#0080C0"><b><font face="Arial,Helvetica"><font color="#FFFFFF">Concurrency/Background |
| Operation Details</font></font></b></td> |
| </tr> |
| <tr> |
| <td ALIGN=RIGHT VALIGN=TOP WIDTH="2%"><img SRC="../../images/Adarrow.gif" BORDER=0 height=16 width=16></td> |
| <td WIDTH="98%"> |
| <p><b>Resources</b></p> |
| Platform Plug-in Developer's Guide: |
| <ul> |
| <li><a href="http://help.eclipse.org/help30/topic/org.eclipse.platform.doc.isv/guide/runtime_jobs.htm">Runtime concurrency infrastructure API</a> |
| <li><a href="http://help.eclipse.org/help30/topic/org.eclipse.platform.doc.isv/guide/workbench_jobs.htm">Platform UI concurrency and background progress API</a> |
| </ul> |
| <p><a href="http://help.eclipse.org/help30/topic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/core/runtime/jobs/package-summary.html">org.eclipse.core.runtime.jobs</a> API Javadoc |
| <p><a href="http://www.eclipse.org/articles/Article-Concurrency/jobs-api.html">On the Job: The Eclipse Jobs API</a>. |
| Eclipse.org article on concurrency and responsive UI infrastructure. |
| <p><a href="http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.ui.examples.job/">Job examples plugin</a>. |
| Example plug-in demonstrating various features of jobs and the progress UI. |
| <p><a href="../../documents/Responsive%20UIs.ppt">EclipseCon concurrency talk</a>. |
| Slides from a talk at EclipseCon 2004 on concurrency and responsiveness. |
| <p><a href="../../documents/steps_to_responsiveness.ppt">The road to responsiveness</a>. |
| Slides from another talk on concurrency and responsiveness. |
| <p><a href="../../documents/plan_concurrency_modal_progress.html">Showing Modal Progress in Eclipse 3.0</a> [Updated June 23, 2004]. |
| A document on how to migrate existing code that shows modal progress using |
| <tt>ProgressMonitorDialog</tt> or <tt>BusyIndicator</tt>. |
| <p> |
| DeveloperWorks articles on concurrency in Java: |
| <ul> |
| <li><a href="http://www-106.ibm.com/developerworks/java/library/j-thread.html">Introduction to Java Threads</a> |
| <li><a href="http://www-106.ibm.com/developerworks/java/library/j-threads1.html">Synchronization is not the enemy</a> |
| <li><a href="http://www-106.ibm.com/developerworks/java/library/j-threads2.html">Reducing contention</a> |
| <li><a href="http://www-106.ibm.com/developerworks/java/library/j-threads3.html">Sometimes it's best not to share</a> |
| </ul> |
| </td> |
| </tr> |
| <tr> |
| <td ALIGN=RIGHT VALIGN=TOP WIDTH="2%"><img SRC="../../images/Adarrow.gif" BORDER=0 height=16 width=16></td> |
| <td WIDTH="98%"> |
| <p><b>Plans and Proposals</b></p> |
| <p><a href="../../documents/plan_concurrency_intro.html">Overview of the problems</a> |
| we are seeking to address. This document also outlines an implementation schedule and plan.</p> |
| <p><a href="../../documents/plan_concurrency_listeners.html">Proposed changes to builders and listeners</a>. |
| Describes the plan to make resource change listeners and incremental project |
| builders run concurrently. Includes an implementation and release schedule.</p> |
| <p><a href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-vcm-home/docs/online/team3.0/progress_support.html"> |
| Showing progress in Eclipse 3.0</a>. Describes remaining issues in 3.0 M4 around |
| how progress is shown for modal and non-modal operations. |
| <p><a href="../../documents/plan_concurrency_issues.html">Remaining Eclipse 3.0 responsiveness issues</a>. |
| Describes the remaining responsiveness work for the 3.0 M5 milestone. |
| </td> |
| </tr> |
| <tr> |
| <td ALIGN=RIGHT VALIGN=TOP WIDTH="2%"><img SRC="../../images/Adarrow.gif" BORDER=0 height=16 width=16></td> |
| <td> |
| <p><b>Progress updates</b> </p> |
| <p>April 30, 2004 - Significant changes have been made to the UI presentation |
| of jobs. A new class of "user" initiated jobs are now shown in a progress dialog |
| by default, and moved to the background on request. The progress view was |
| replaced with a new implementation using native progress indicators. Jobs in |
| this view can also have actions associated with them for executing when the |
| job completes. An affordance on the workbench window status line indicates |
| when there is activity in the progress view, and when there are interesting results |
| being shown. |
| </p> |
| <p>January 26, 2004 - Job and UI API are feature complete. Remaining work |
| is to improve the UI experience, fix bugs, and write documentation. |
| </p> |
| <p>October 20, 2003 (M4 milestone) - Most existing background activity has |
| been moved to use the jobs API. New feature work (such as quick diff) is also |
| using jobs extensively. The UI now gives feedback when a modal operation |
| is blocked due to conflicts with a background operation, and the user is able to |
| cancel when in this state. A dynamic team has been setup to address the remaining |
| responsiveness issues for the M5 milestone. |
| </p> |
| <p> |
| July 14, 2003 - Several clients are now using the job manager for background |
| activity, including the UI decorator and various debug threads. The CVS/Team |
| component is using jobs in a "work in progress" mode that has to be enabled |
| from preference pages. This includes background filling of the repository view, |
| background update of live sync view, and background CVS operations such as checkout. |
| The UI progress indicator needs to be manually enabled by hard-coding the preference |
| "showProgressIndicator=true" in the org.eclipse.ui.workbench preference store. |
| In branch "Bug_36957", org.eclipse.core.resources now uses background jobs for |
| building, resource change notification, and workspace snapshot (incremental save). |
| Search and JDT core components are actively working on moving to job manager API. |
| <p> |
| June 24, 2003 - The additional support from the Workbench team for the responsive UI work |
| has been released to HEAD. It appears in Nightly builds starting with N20030624 and will be |
| included in the July 1 integration build. Many bug fixes and API refinements have been |
| released to the job manager infrastructure in org.eclipse.core.runtime in HEAD.</p> |
| <p> |
| June 4, 2003 - Implementation of core job manager API has been released to the 3.0 HEAD stream. |
| This API is still experimental, and is not currently used by any components in the |
| platform. There is ongoing work in branch "Bug_36957" in both core and UI |
| that is beginning to use this API.</p> |
| <p> </p> |
| </td> |
| </tr> |
| </table> |
| |
| </body> |
| </html> |