gpt4 book ai didi

android - Linux API,即使使用正确的文件描述符和权限,Write() 也会失败

转载 作者:行者123 更新时间:2023-11-30 18:12:28 26 4
gpt4 key购买 nike

我正在调试写入调用失败的问题。

#define PATH_1 "/sys/p/lock"
#define PATH_2 "/sys/p/unlock"

void api_init()
{
fd_name_1 = open(PATH_1, O_WRONLY|O_APPEND);
fd_name_2 = open(PATH_2, O_WRONLY|O_APPEND);
}

void api_acquire()
{
return_1 = write(fd_name_1, WAKELOCK_NAME, strlen(WAKELOCK_NAME));
if(return_1 != (int)strlen(WAKELOCK_NAME))
printf("error writing to file");
}

int api_release()
{
return_2 = write(fd_name_2, WAKELOCK_NAME, strlen(WAKELOCK_NAME));
if(return_2 != (int)strlen(WAKELOCK_NAME))
printf("error writing to file");
}
int main(void)
{
api_init();
api_acquire();
/*after some work*/
api_release();
}

从上面的代码中,我能够获取 ok,但无法释放锁,我得到的 return_2 为 -1。谁能帮我调试此失败的可能原因。

最佳答案

我猜你不能写入/sys/p/lock或/sys/p/unlock,因为它不是真正的文件系统,这些文件不支持写入。

https://en.wikipedia.org/wiki/Sysfs?wprov=sfla1

关于android - Linux API,即使使用正确的文件描述符和权限,Write() 也会失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35499855/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com