PostgreSQL 9.5 added skip locked to select for update to improve concurrency performance, but why not add it to update sql?
this is an application case, some body will update a tuple at the same time, so the RT for waiter is big, I use function and select for update nowait or advisory lock , can improve concurrency , but it's not very pure for developer.