Implement interface for inter process non-blocking binary lock based on POSIX semaphores
Summary: Implement methods from parent diff
Test Plan: Temporarily modify NotificationService and AppDelegate so that the first writes notification to a file from which the second reads upon app launch. Cover reads and writes with semaphore operations. Use debugger to hold semaphore in AppDelegate, trigger notification and see that NotificationService did not acquire semaphore (simply logs it).
Reviewers: palys-swm, karol-bisztyga, varun
Reviewed By: palys-swm
Subscribers: ashoat, Adrian, atul, yayabosh
Differential Revision: https://phab.comm.dev/D4381