我在主线程中定义了一个结构体,用来存取和提取全局数据
type
  no_Struct = record
    ID: integer;
    Size: word;
  end;  sBuffer = record
    buf: array [0..100] of no_Struct
    num: integer; //这个是包含no_struct的总数
  end;
var
  testBuff: sBuffer;
主线程和子线程中都可以直接读取和写入,也可以有效更改num的值。
但是,我做了一个含数来处理它的时候,却不可以有效更改了,该函数如下:
function isrtData(QBuff: sBuffer; Qdata: no_Struct): boolean;
begin
  if QBuff.num < 100 then
  begin
    QBuff.buf[QBuff.num]:=Qdata;
    QBuff.num:=QBuff.num + 1;
    result:=true;
  end
  else
  begin
    result:=false;
  end;
end;请大侠们指点一下,这是为什么呀?