是否可以锁定线程的套接字?例如,使用 at org.ofbiz.base.start.Start.init(Start.java:202)
at org.ofbiz.base.start.Start.main(Start.java:127)
?
这些锁是为文件设计的,但它们将通用文件描述符作为参数。
答案 0 :(得分:4)
文档明确指出flock适用于文件。从MacOS文档页面(man):(强调添加)
Flock()在与文件描述符fd关联的文件上应用或删除建议锁定。
特别是,这适用于同一文件上的进程间同步。假设您试图在进程中的线程之间进行锁定,那么依赖pthread_mutex_lock / unlock似乎是明智之举。 (你将要做一个缓慢的IO,所以我也不愿意使用自旋锁)。
希望有所帮助,