ZM is a C library to handle continuations (coroutine, exception, green thread) with finite state machines.

The library is written in C99 without external dependecy or machine-specific code and can be compiled in ansi-c or ansi-c++ with the minal effort to define two unsigned int type
(uint8_t and uint32_t).

Features

  • task: instance green thread or coroutine
  • subtask: task can instance subtask as thread can use function
  • error-exception: exception can be raised and catched between subtasks (stack unwinding)
  • continue-exception: allow to resume the execution in raise point (no stack unwinding)
  • virtual event: lock in waiting event mode one or more task
  • deterministic: library use only finite state machine as control flow
  • portable: no architecture specific assembly code
  • no-setjmp: library don't use any non-local-jumps functions (setjump, ucontext...)
  • self-contained: no external or OS specific libraries are required

Project Activity

See All Activity >

Categories

Libraries

License

BSD License

Follow ZM

ZM Web Site

Other Useful Business Software
Auth0 B2B Essentials: SSO, MFA, and RBAC Built In Icon
Auth0 B2B Essentials: SSO, MFA, and RBAC Built In

Unlimited organizations, 3 enterprise SSO connections, role-based access control, and pro MFA included. Dev and prod tenants out of the box.

Auth0's B2B Essentials plan gives you everything you need to ship secure multi-tenant apps. Unlimited orgs, enterprise SSO, RBAC, audit log streaming, and higher auth and API limits included. Add on M2M tokens, enterprise MFA, or additional SSO connections as you scale.
Sign Up Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of ZM!

Additional Project Details

Programming Language

C

Related Categories

C Libraries

Registered

2017-02-14