Abstract:
This chapter will help you understand the rules that you must adhere to when developing a concurrent application with a graphical user interface (GUI). Regardless of the technology you use (for example, developing an Android mobile app or a desktop application using the .NET Framework), the concepts presented here are standard for the GUI toolkits you will use. The most important aspect includes ensuring the application does not freeze or become unresponsive, by employing background threads. This in turn leads to the other important consideration, which relates to ensuring access to any GUI components does not introduce potential race conditions. Collectively, the concepts presented here relate to the single-thread rule that governs almost all GUI toolkits you will likely come across.