Abstract:
AxiCo2 is an Application Programming Interface (API) designed to simplify the implementation of concurrency in local environment as well as in the invocation of web services. AxiCo2 thereby reduces many inherent difficulties undergone by developers in programming multi-threaded applications. The higher level Application Programming Interface provided by AxiCo2 hides complexities associated with concurrency constructs and web service invocations. As a framework for concurrency and coordination among threads, AxiCo2 provides a means of asynchronous communication among threads which are used for local tasks and service invocations using “Ports” which are subdivided as Local and Service Ports. AxiCo2 has a thread pool within itself eliminating inherent overheads of thread per task approach. Apart from being a high level Application Programming Interface to hide complexities of concurrency, AxiCo2 provides means to the developer to configure applications to respond to partial success through the variety of Receivers provided. This set consists of Join, Choice, Multiple Item and Timeout Receivers which are used in implementing various logical constrains between tasks. AxiCo2 derives benefits both in programmability and performance perspectives.