If I want to create an application with multithreads, i.e. OpenGL rendering thread, helper thread doing computation. How should I do data locking between these two? That is to say, when my rendering thread is running, at the same time, the helper thread modifies some vertex data, the position of an object, for example, Is there anyway to do the data access locking?
This isn’t an OpenGL question. You probably want a mutex. Look for intro multi-threading references.