略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: sem_remove

2024-11-12

sem_remove

(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)

sem_removeRemove a semaphore

说明

sem_remove(SysvSemaphore $semaphore): bool

sem_remove() removes the given semaphore.

After removing the semaphore, it is no longer accessible.

参数

semaphore

A semaphore as returned by sem_get().

返回值

成功时返回 true, 或者在失败时返回 false

更新日志

版本 说明
8.0.0 semaphore expects a SysvSemaphore instance now; previously, a resource was expected.

参见

add a noteadd a note

User Contributed Notes 1 note

up
1
donotcallme at iwillcallyou dot com
8 years ago
sem_remove() shouldn't be part of a normal cleanup/teardown and should be called very rarely due to bugs in the implementation.

It doesn't seem to hurt to leave semaphores lying around and is likely to be more performance-friendly to do so.  If you are concerned about having too many semaphores floating around for an application (e.g. a file cache that uses ftok()), you can use some modulus arithmetic and simple addition to create a limited range of values for your semaphores off in the middle of nowhere.  For example, ftok() % 101 + 0xBADBEEF.  Be sure to replace 0xBADBEEF with your own random value.  The example limits the range to 101 semaphores.  101 is a prime number - so if you want more or less, be sure to replace it with a prime number since primes theoretically help distribute values more evenly.

官方地址:https://www.php.net/manual/en/function.sem-remove.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3