- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在使用 AIX 6.1。我正在使用(并参与开发)的程序包含对 C 库 gettimerid()
函数的调用。
我遇到的问题是 gettimerid()
调用开始间歇性失败,可能每天一次,返回 -1(表示错误),当我检查 errno
,它已设置为 ENOSPC
(28d),表示“设备上没有剩余空间”。
根据 the AIX documentation , ENOSPC
没有显示为可能的返回值之一,这让我对这意味着什么感到困惑。
据我所知,这不需要任何文件系统空间,但我检查了文件系统的未使用文件空间和 inode 使用情况,这些似乎没有问题,有足够的可用空间,而且就我而言告诉有足够的可用内存(尽管我不知道这个特定进程可能有一些限制,如果这是相关的),所以我不确定是什么导致 ENOSPC
被返回为gettimerid()
调用的结果。
示例代码:
static timer_t TimerId;
if ( ( TimerId = gettimerid(TIMEOFDAY, 0) ) < 0 )
{
printf( "gettimerid fail [timer id=%d, errno=%d]", TimerId, errno );
}
示例输出:
gettimerid fail [timer id=-1, errno=28]
有谁知道什么可能导致 AIX 上的 gettimerid()
返回此代码?
最佳答案
可能是重复获取TIMEOFDAY
定时器,中间没有调用reltimerid
引起的。举个例子:
while( 1 )
{
timer_t TimerId;
if( ( TimerId = gettimerid( TIMEOFDAY, 0 ) ) < 0 )
{
printf( "gettimerid failed: %d\n", errno );
break;
}
else
printf( "gettimerid OK: %d\n", TimerId );
}
这个循环的输出是:
gettimerid OK: 5
gettimerid OK: 6
gettimerid OK: 7
gettimerid OK: 8
gettimerid failed: 28
这是未记录的 ENOSPC
错误号。
关于c - 什么会导致 gettimerid() 失败,将 errno 设置为 ENOSPC(未记录)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48303211/
我的应用程序正在通过熔断器连续写入文件。每当文件中没有可用空间时,我的应用程序应该等待,直到空间可用。所以,基本上我的完整系统如下:顶层:Application_1中间层:libfuse下层:Appl
我正在编写一个新的 Android 应用程序,但遇到了一些麻烦。 事情是这样的:我需要填充本地存储,但是当我这样做时,系统会显示一个弹出窗口,提示没有剩余空间可写入。没关系! 执行此步骤后,应用程序会
嗨,我在运行gulp watch时遇到此错误。我在laravel项目中使用 vueify 。为什么会这样。这些天一切都很好,今天就出现了。 $ gulp watch [12:56:01] Using
想象一下这种情况: 一个进程 (A) 通过创建大文件不断地将数据写入磁盘,并使用单独的 write() 命令将数据附加到该文件 另一个进程(B),不断从磁盘中删除文件 假设 (B) 删除数据的速度足够
Linux/Unix 定义了大量相对相似的错误代码。是否有任何普遍遵循的约定建议应将哪些类型的错误绑定(bind)到哪些错误代码? 假设我的函数有一些具有固定大小的任意容器(并且由于与实际 RAM 使
ENOSPC:达到文件监视程序数量的系统限制。如何解决呢? 最佳答案 运行以下命令以避免使用ENOSPC: echo fs.inotify.max_user_watches=524288 | sudo
我的 meteor 应用程序在启动后立即出现错误,它说: => Meteor server running on: http://localhost:3000/ /home//.meteor/tool
这可能是一个基本问题,但我找不到答案。当你只想在 Android 中捕获 FileNotFound 时,你可以这样写 } catch (FileNotFoundException e)
我刚刚使用 expressJs 为他们上传视频教程的机构构建了一个应用程序。起初视频被上传到同一台服务器,但后来我切换到亚马逊。我的意思是只有视频被上传到亚马逊。现在,每当我尝试上传 ENOSPC 时
我在使用 Node.js 并将文件上传到服务器时遇到问题。为了将文件上传到服务器,我使用了 plugin .开始上传文件到服务器时,Node.js 进程崩溃并显示错误: Error: ENOSPC.
我使用 pm2 运行一个 node.js 应用程序,它为我的前端应用程序提供了 restFul api。一切都很好,直到今天早上我开始看到错误,当我去终端并开始得到: " Error: ENOSPC,
我正在试用官方5 Min Quickstart关于 Typescript 的 Angular 2。我遵循了所有步骤,当我运行 npm start 时,它确实在我的 Firefox 浏览器上弹出了预期的
这个问题在这里已经有了答案: Grunt watch error - Waiting...Fatal error: watch ENOSPC (7 个回答) 3年前关闭。 运行 grunt serve
我使用 cstdio 在 linux 上编写了一个 C++ 应用程序。它包含一个函数,该函数应该用随机数据覆盖整个设备。它被赋予一个文件名,在内存中创建随机数据 block ,并使用 fwrite()
DeepinLinux 运行 React 项目出现 Error: watch ENOSPC 的解决方案 今天给新来的前端同事安装了 DeepinLinux,然后在运行 React 项目的时候出现了 E
我一直在用VSCode Remote Container Plugin一段时间没有问题。但是今天当我尝试打开我的项目时,远程容器无法打开并出现以下错误: Command failed: docker
我启动了一个 28G 卷的 ec2 实例并设置了 codepipeline。在 aws-codepipeline 的构建阶段,我设置了 jenkins 并在执行时在执行 npm install 时在构
在下面的代码片段中,有没有办法处理ENOSPC? #include #include #include #include #include // open input file stream
write() 调用失败,errno = 28 (ENOSPC),设备上没有剩余空间。我正在尝试通过以下方式处理此错误。当磁盘已满时,我正在执行 lseek() 以将文件指针移动到文件的开头。 我相信
我刚刚在我的 Ubuntu 14.04 操作系统上首次安装了 Node.js。我还安装了 npm。我安装过程的下一步是安装 nodemon。这一切都很好。 但是,当我通过在命令行中键入 nodemon
我是一名优秀的程序员,十分优秀!