Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
fpc-src / usr / share / fpcsrc / 3.0.0 / tests / test / units / system / interlocked1.pp
Size: Mime:
var
  target : longint;
  ctarget : cardinal;

begin
  target:=1234;
  InterLockedCompareExchange(target,4321,1234);
  if target<>4321 then
    halt(1);

  ctarget:=1234;
  InterLockedCompareExchange(ctarget,4321,1234);
  if ctarget<>4321 then
    halt(2);

  // Test what happens if we use a comparend which is NOT currently set
  target := 12345;
  if(InterLockedCompareExchange(target, 54321, 123) <> 12345) then
    halt(3);
  if target<>12345 then
    halt(4);

  writeln('ok');
end.