今天使用jrockit启动大量线程时(2026条线程)发生错误:
Error starting thread: Resource temporarily unavailable
经过深入查询,排除了内存,句柄数等问题. 并且切换至root用户打开大量线程时没有问题。试着调整ulimit各项参数,最后发现是"max user processes "参数有问题,通过root用户调整大小至 12000,线程数也随着增大.
root@blog:/home/badqiu# ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 143360
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 2048
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 2046
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
在linux系统内生效。
vi /etc/security/limits.conf
* soft nproc 12000
* hard nproc 12000
nproc就是"max user processes",完整描述是: nproc - max number of processes
参数含义:
单个用户可以启动的线程数,因为进程也会启动一个线程,所以也间接对进程数有限制。
注意:
该参数只对普通用户有用,root用户不在此限制。 所以用root用户可以启动几万个线程,无法重现这个问题.
分享到:
相关推荐
connect() to unix:/var/run/php-fpm.sock failed (11: Resource temporarily unavailable) 发现phpfpm的listen是unix sock方式运行的,问题可能出在php fpm上。php fpm配置文件里有backlog,backlog是linux服务器在...
OS error code 11: Resource temporarily unavailable 操作系统错误代码11:资源暂时不可用 OS error code 12: Cannot allocate memory 操作系统错误代码12:无法分配内存 OS error code 13: Permission denied 操作...
在安装vsftpd时,可能会遇到“Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)”的问题。这是因为系统中存在锁文件,阻止了安装进程。 解决方法:删除锁文件,具体...
/etc/profile: fork: retry: Resource temporarily unavailable ``` 这些错误通常表明系统中的线程资源已经耗尽,即进程数达到了系统的最大限制。通过执行`ulimit -a`命令可以查看当前系统对各种资源的限制值,在...
但是,在使用dnw烧写时,经常出现问题,例如“usb_bulk_write failed: Resource temporarily unavailable”等错误信息。 在Linux下使用dnw烧写时,需要加载驱动程序,以便dnw工具可以正确地将固件烧写到目标设备中...
OS error code 11: Resource temporarily unavailable** - **中文解释**:资源暂时不可用 - **描述**:当所需资源暂时不可用但稍后可能会变得可用时返回此错误。例如,磁盘空间不足但稍后可能释放。 **13. OS ...
在使用 sudo apt-get install * 命令安装程序时,可能会出现以下错误信息:E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)E: Unable to lock the administration ...
12. **OS error code 11: Resource temporarily unavailable** - **操作系统错误代码11:资源暂时不可用** - 通常发生在尝试获取一个临时不可用的资源时。这可能是由于资源被其他进程占用或系统资源不足。 13. **...
例如,`errno 11`对应的错误描述是"Resource temporarily unavailable"。 在上面的代码示例中,展示了如何遍历从0到`NUM`(假设是150)的所有整数,调用`strerror`函数获取每个错误代码的描述并打印出来。这可以...
11. OS error code 11: Resource temporarily unavailable - 资源暂时不可用,如网络连接超时或文件锁。 12. OS error code 12: Cannot allocate memory - 内存分配失败,系统内存不足。 13. OS error code 13: ...
#### 11 EAGAIN -- Resource temporarily unavailable 资源暂时不可用。这通常发生在尝试获取一个已经被其他进程占用的资源时,如锁。 #### 12 ENOMEM -- Cannot allocate memory 无法分配内存。这通常发生在系统...
if e.errno == 11: # EAGAIN (11): Resource temporarily unavailable print("The file is already locked by another process.") else: raise finally: # 释放锁 fcntl.flock(fd, fcntl.LOCK_UN) print(...
// [hawkview_err]xxxxcan't open /dev/video0(Resource temporarily unavailable) // 2016/10/25 14:33 wenyuanbo cloase suspend. // register_early_suspend(&dev->early_suspend); vfe_print("register_...
if "Resource temporarily unavailable" in str(e): print("文件已被其他进程锁定,请稍后再试") return False else: raise def unlock(self): fcntl.flock(self.file, fcntl.LOCK_UN) self.file.close() ...
// [hawkview_err]xxxxcan't open /dev/video0(Resource temporarily unavailable) // 2016/10/25 14:33 wenyuanbo cloase suspend. // register_early_suspend(&dev->early_suspend); vfe_print("register_...
// [hawkview_err]xxxxcan't open /dev/video0(Resource temporarily unavailable) // 2016/10/25 14:33 wenyuanbo cloase suspend. // register_early_suspend(&dev->early_suspend); vfe_print("register_...