protobuf vs lock | What are the differences? | StackShare