小编Ser*_*gey的帖子

用O_CREAT打开 - 是打开还是创建?

我有10个进程尝试使用open(O_CREAT)调用同时或多或少地打开同一个文件,然后删除它.是否有任何可靠的方法来确定哪个进程实际上创建了文件,哪个进程已经打开已创建文件,例如,如果我想准确计算在这种情况下打开该文件的次数.

我想我可以在文件打开操作上放置一个全局互斥,并使用O_CREAT和O_EXCL标志执行一系列open()调用,但这不符合我对"robust"的定义.

c unix file

14
推荐指数
2
解决办法
3万
查看次数

在visual studio中启动调试器时通过属性表更改PATH

我有一组属性表,它们定义了我的c ++项目中常用的第3部分库的包含和链接路径.有没有办法在可执行文件中定义PATH,以便在我在调试器中启动它时找到二进制文件?

编辑:我注意到如果我将以下内容添加到属性表(通过记事本)

<PropertyGroup>
   <VCRedistPaths>c:\path\bin\$(Platform);$(VCRedistPaths)</VCRedistPaths>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

然后我在调试器下运行app时得到c:\ path\bin\Win32(例如)路径,但问题是visual studio没有立即检测到我的更改(如果我更改属性表中的路径或附加另一个属性表与另一个路径),我必须重新启动visual studio以获取拾取的更改.谁知道这是否可以避免?

msbuild path visual-studio-2010 propertysheet visual-c++

5
推荐指数
2
解决办法
2547
查看次数

Linux中另一个进程的重复文件描述符(不带sendmsg)

我所拥有的是进程id和来自该进程的文件描述符.除了sendmsg之外还有什么办法可以复制(或重新打开)该进程的文件描述符以供Linux中的另一个进程使用吗?

Windows有DuplicateHandle用于此目的,我想知道Linux上是否有类似的东西.

c linux ipc

4
推荐指数
1
解决办法
1708
查看次数

标签 统计

c ×2

file ×1

ipc ×1

linux ×1

msbuild ×1

path ×1

propertysheet ×1

unix ×1

visual-c++ ×1

visual-studio-2010 ×1