why InterlockedAdd is not available in vs2010?
Asked Answered
S

1

8

I have include windows.h and want to use InterlockedAdd in vs2010 and compiles error "identifier not found", but the InterlockedIncrement can work well. I try to use:

#include <intrin.h>
#pragma intrinsic(_InterlockedAdd) 

and compiles error:

warning C4163: '_InterlockedAdd' : not available as an intrinsic function
1>test10.cpp(107): error C3861: 'InterlockedAdd': identifier not found

What's wrong with the code?

Sumach answered 30/1, 2013 at 11:56 Comment(1)
connect.microsoft.com/VisualStudio/feedback/details/524100/… seems to talk about itMeat
P
16

The InterlockedAdd function is only available on the Itanium platform. On x86 and x86-64 platforms you can use InterlockedExchangeAdd instead. This also adds a value to the target variable, but it returns the original value instead of the new value.

Pyrognostics answered 30/1, 2013 at 12:10 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.