Share context between different host threads

Hi guys, I have a question about sharing context between different host threads.
Supposed, thread A initialize OpenCL resources(context, program, kernel), and thread B use those resources . For CUDA driver api, cuCtxPushCurrent/cuCtxPopCurrent can do the similar effect. For OpenCL, Is there any specific operation to do this?

OpenCL api is thread-safe except clSetKernelArg. that can answer my question.

Starting in OpenCL 1.1 (OpenCL 1.0 was not threadsafe).