问题标签 [fcntl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
620 浏览

sockets - ioctl() 和/或 fcntl() 如何用于编写非阻塞套接字?

我正在尝试学习如何编写非阻塞套接字。谁能解释一下 ioctl() 和 fcntl() 在其中扮演什么角色(即文件描述符在创建非阻塞套接字中的角色是什么。作为示例的代码片段和解释将不胜感激。

0 投票
2 回答
1689 浏览

c++ - 从 fcntl.h 读取函数中的 C++ 字符串

在我大学的基础 Linux 编程课程中,我们使用 fcntl.h 和 unistd.h 使用 C++ 字符串,我得到以下信息:

这条线有效。我创建了一个文件,其中包含输入字符串的内容。但是,为什么这些行都不起作用:

https://www.dropbox.com/s/lnw208uo3xurqxf/Basic%20Unix%20Operations%20on%20Text%20Files.cpp?dl=0

这是程序,供您参考。谢谢!:)

0 投票
1 回答
84 浏览

cross-platform - 如何在不使用 ncurses 的情况下获得控制台宽度?

我需要的只是控制台宽度,所以最好不要依赖另一个提供许多其他功能的库。此外,我的库的用户可能没有安装ncurses开发头文件;因此,如果我删除对 的依赖ncurses,我的用户的索赔将会减少。

我已经下载了ncurses源代码,粗略看了下,没能掌握采集控制台宽度的关键代码。我知道fcntl()可以做到,但 Windows 可能没有。谁能告诉我如何以跨平台的方式获得宽度?

0 投票
1 回答
2218 浏览

c - 当多个进程使用 F_SETLKW 锁定同一个 fd 时,为什么我看不到死锁 (EDEADLK)?

我需要妥善处理 EDEADLK。在我的程序中,我看到两个孩子都等到父母睡觉,然后他们应用锁并立即离开。抱歉我的错误,我是一名西班牙学生。

0 投票
1 回答
37 浏览

c - 如何将旧描述符与新描述符连接起来?

考虑我已经像函数一样打开了hell.txt文件open()

然后,考虑它将描述符返回为4. 并且hi.txt已经占用了描述符3,所以我想在不使用或功能的情况下连接hell.txt 文件。3dup2fcntl()

是否可以在不使用这两个功能的情况下进行更改?

0 投票
0 回答
968 浏览

python - python ioctl 创建 ifreq 结构

我对系统编程很陌生。我正在尝试使用带有ioctl的Python查询一些NIC信息,我很容易得到代码但在理解上有一些困难

获取IP地址的Python代码

有人可以建议如何决定格式以及为什么/如何决定空字符的数量吗?

此链接似乎与我的问题几乎相同,但找不到我的答案 http://www.unix.com/programming/148374-python-struct-pack.html

我找到了另一种创建 ifreq 的方法.. ifreq = struct.pack('256s', self.iface)。如果可能,请帮助我了解其中的区别。

0 投票
1 回答
1512 浏览

android - strerror(errno) 在调用 read() & write() 时返回“无效参数”

我尝试通过本机方法访问 android 中的文件,但在调用读取或写入函数后出现“无效参数”。data_ptr512 字节对齐,并在 java 中声明为字节数组。

JNIEXPORT jint JNICALL

JNIEXPORT jint JNICALL

编辑:

如果我使用open(filePath, O_CREAT | O_RDWR, S_IRUSR | S_IWUSR);错误就会消失。但我想使用O_DIRECT忽略缓存和缓冲区来直接访问硬件。

0 投票
1 回答
15605 浏览

python - python lockf和flock行为

flock我已经阅读了关于/ lockf/之间区别的足够多的关于 stackoverflow 的帖子,fcntl但我无法回答以下观察结果:

为什么这两种情况下的行为不同?我知道显而易见的答案是,这是两种不同的锁定机制。我在寻找:

  1. 归档( )实际上lockf()flock()做什么inode/fd
  2. 根据演示,我们是否允许递归获取相同的锁?

我了解基础知识fds和东西,所以我希望有一个对操作系统级别细节有更多见解的技术答案。

OSX 10.9.3,Python:2.7.5

0 投票
1 回答
450 浏览

python-2.7 - Ubuntu 和 Ironpython:添加到 sys.path 的路径以及如何导入 fcntl 模块?

我通过 Mono 在 Ubuntu 14.04 中构建并运行了最新的 IronPython 版本。构建 Ironpython 并使用 Mono 运行似乎微不足道,但我不相信我有适当的 sys.paths 或 Ironpython 导入模块的权限,尤其是像 fcntl 这样的模块。

运行 ensurepip 运行子进程,并希望导入“fcntl”。那里已经有很多帖子,但主要是关于窗户的。

据我了解, fcntl 是 unix python2.7 标准库的一部分。开始的主要问题似乎是 Ironpython 不知道这是哪里,但我也怀疑由于 fcntl 似乎是 perl 或者至少不是纯 python,所以还有更多的故事。

所以我相关的 sys.path 问题是:

  1. 在 Ubuntu 中,我应该将 Ironpython(Ironlanguages 文件夹)安装到哪里?我需要设置任何权限吗?
  2. 我应该在 sys.path 中添加哪些路径才能找到 Ironpython 的标准库?
  3. 我应该将哪些路径添加到 sys.path 以获取 Ubuntu 的 python 2.7 安装模块?
  4. 我应该将哪些路径添加到 sys.path 或方法以使 fcntl 在 Ironpython 中正确导入
  5. 有关如何解决通过使用 mono ipy.exe X:Frames ensurepip 通过 ensurepip 安装 pip 的已知问题的任何线索

谢谢!

0 投票
0 回答
49 浏览

embedded - 用户空间文件锁定库

我需要将 sqlite 移植到嵌入式非 posix 操作系统。问题是操作系统不支持 posix 文件锁定机制。我可以使用任何用户空间 posix 锁库实现吗?