KhronosGroup / KSCAF_DocRequirements

Khronos Safety Critical Advisory Forum’s minimum requirements for developing a safety critical technology specification.
3 stars 1 forks source link

Parallel execution of threads: no confusing disclaimers #31

Open bnaodovic opened 6 years ago

bnaodovic commented 6 years ago

API disclaimers such as “client API commands are not guaranteed to be atomic” are confusing in the context of parallel execution of threads. For example, since API users cannot know whether ‘eglMakeCurrent’ causes any client API operations, they cannot know whether call ‘eglMakeCurrent(dpy, EGL_NO_CONTEXT, EGL_NO_SURFACE, EGL_NO_SURFACE)’ at the very end of a thread will finish before call to ‘eglMakeCurent(dpy, draw, read, ctx)’ at the very start of the next thread, where ‘ctx’ was bound to ‘draw’ and ‘read’ in the first thread. In this example, standard should include guidance whether it is up to the implementation or the user to manage effects of parallel calls to specific functions.

For reference, general issue "Parallel execution of threads" is defined as issue #29.

irudkin commented 6 years ago

More implementation guidance should be provided by SC API designers.