MySQL - LOCK IN SHARE MODE for EXISTS query
There are multiple type of locks in Mysql.
LOCK IN SHARE MODE in a shared mode lock on any rows that are read. So you need to pay attention to your query, how many rows are read (look also at examined column when doing explain).

The isolation level will also affect behaviors of certain locks.
I strongly advise to let Mysql take care of the locks.
When an update needs to occur it is usually the first come first serve.
make sure your Exist query is fast (best is to query on the PK).

If exists (select 1 from tbl1 WHERE ) Then
 perform your update
Else 
Select "record does not exists" 
End if;