Client tags are a safe way to pass data between GUI (foreground) and an asynchronous thread (background). Directly accessing window objects and the components within them is not safe. You have to delegate to short functions in the foreground to make any changes and safely read values. This topic discusses the relevant techniques: