Document
Introduction
Summary
arcalet ?
Capabilities
Object Model
arcalet API
Synchronization
Event Processing
Callback
API Class
Objects Summary
Error Code
Reference
ArcaletGame
Constructor
Method
Property
Event
ArcaletScene
Constructor
Method
Property
Event
ArcaletItem
Method
Super User
ArcaletScore
Method
Super User
ArcaletShop
Method
ArcaletSystem
Method
ArcaletThreadPool
Method
Object Modelarcalet API 》 Synchronization

Synchronization

All arcalet API object methods are designed to be non-blocking. The call status is given by Event and Callback objects. Most Windows platforms and game engine restrictions can only be executed in the main thread control application GUI. The caller must build objects in the main thread or use Callback objects. The arcalet API will be in the main thread to trigger Event or Callback objects.
Please note: triggering Event or Callback objects in the original thread is not absolutely necessary, because the thread can not be interrupted by the application system. Therefore, for the arcalet API to trigger Event or Callback objects from the original thread, the main thread must be controlled by the message queue. In general, every application in Windows, including the window, is controlled by the message queue from the main window. But if the developer uses other applications similar to the console application to develop game play, then the virtual STA (Pseudo Single Thread Apartment) threading model has to be used to complete the original thread trigger Event and Callback.

The virtual STA model is executed by the main thread and is timed to constantly call ArcaletGame.EventDispatcher(). Most of the game engines are frame-based systems -- developers can call this method in every frame.
Was this page helpful?
Yes No