[Lazarus] lNet UDP and the send-function

IntelliAdmin Support joel.sundquist at intelliadmin.com
Thu Dec 24 14:05:52 CET 2009


Ahh. OK. Now I see.

Thanks,

Joel

On Thu, Dec 24, 2009 at 7:35 AM, John vd Waeter <john at jvdw.nl> wrote:
> Hi Joel,
>
> No, that was not the problem.
>
> The buffer I talked about is actually a record.
>
> First I filled record.Buffer and record.sizeofbuffer
>
> Then I pass this record to a routine that calculates and adds a checksum
> to the buffer, hereby adding 2 bytes to the buffer and thus adding 2 to the
> size.
>
> Only now the record is ready to be sent by the UDP
>
> But the thread that does the sending just captured the buffer while it was
> filled with the contents, but no crc added yet, so just inbetween the steps
> mentioned above. Hence the size was 2 bytes smaller then expected.
>
> Just developing on x86.
>
> John
>
>
>
>
>
> IntelliAdmin Support wrote:
>>
>> John,
>>
>> I have a question about that. Normally access to integer values is
>> atomic, and you do not need to thread protect them when accessing. Was
>> this size value a 32 bit integer value?
>>
>> Or are you compiling on a different hardware platform than x86?
>>
>> Thanks,
>>
>> Joel
>>
>> On Thu, Dec 24, 2009 at 6:49 AM, John vd Waeter <john at jvdw.nl> wrote:
>>>
>>> Ok, solved.
>>> Did not realize in multithread environment one thread could read a
>>> variabele
>>> when other thread was just not finished filling this variabele....
>>>
>>> --
>>> _______________________________________________
>>> Lazarus mailing list
>>> Lazarus at lists.lazarus.freepascal.org
>>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
>>>
>>
>> --
>> _______________________________________________
>> Lazarus mailing list
>> Lazarus at lists.lazarus.freepascal.org
>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
>>
>
>
> --
> John vd Waeter
> www.jvdw.nl
> www.gps-carpool.net
> www.shotinthedark.nl
> www.pdaforms.nl
> www.dbapocket.nl
>
> john at jvdw.nl
>
> --
> _______________________________________________
> Lazarus mailing list
> Lazarus at lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
>




More information about the Lazarus mailing list