Delphi中InterLockedIncrement方法能否接受第二个参数作为锁?

更新于
2026-10-09 05:36:05
0阅读来源:SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计218个文字,预计阅读时间需要1分钟。

Delphi中InterLockedIncrement方法能否接受第二个参数作为锁?

我想使用`InterLockedIncrement(counter, step)`,但编译器说参数太多。是否有用获取第二个参数的API?您正在寻找的Windows函数名为`InterlockedAdd`。但我对Delphi的RTL是否提供此功能不太确定,可能是因为它实现的方式不同。

我想要做

InterLockedIncrement(counter, step)

但编译说

参数太多了

Delphi中InterLockedIncrement方法能否接受第二个参数作为锁?

是否有用于获取第二个参数的API?

您正在寻找的Windows函数名为 InterlockedAdd.但我不相信Delphi的RTL提供此功能,可能是因为它实际上是作为MS工具链内在的编译器实现的.

还有TInterlocked.Add可以满足您的需求.

但我认为最好的选择是内在功能AtomicIncrement.这样称呼它:

AtomicIncrement(SomeVar, SomeAddend);

内在的优点是:

>它是跨平台的.>它内联,因此避免了函数调用的成本.

本文共计218个文字,预计阅读时间需要1分钟。

Delphi中InterLockedIncrement方法能否接受第二个参数作为锁?

我想使用`InterLockedIncrement(counter, step)`,但编译器说参数太多。是否有用获取第二个参数的API?您正在寻找的Windows函数名为`InterlockedAdd`。但我对Delphi的RTL是否提供此功能不太确定,可能是因为它实现的方式不同。

我想要做

InterLockedIncrement(counter, step)

但编译说

参数太多了

Delphi中InterLockedIncrement方法能否接受第二个参数作为锁?

是否有用于获取第二个参数的API?

您正在寻找的Windows函数名为 InterlockedAdd.但我不相信Delphi的RTL提供此功能,可能是因为它实际上是作为MS工具链内在的编译器实现的.

还有TInterlocked.Add可以满足您的需求.

但我认为最好的选择是内在功能AtomicIncrement.这样称呼它:

AtomicIncrement(SomeVar, SomeAddend);

内在的优点是:

>它是跨平台的.>它内联,因此避免了函数调用的成本.