Hi!
On 02/25/2014 05:17 PM, [email protected] wrote:
> Hi!
>> Macro to use for making functions called only once in multi-threaded
>> tests such as init or cleanup function.
>>
>> Signed-off-by: Alexey Kodanev <[email protected]>
>> ---
>>   include/test.h |   15 +++++++++++++++
>>   1 files changed, 15 insertions(+), 0 deletions(-)
>>
>> diff --git a/include/test.h b/include/test.h
>> index d46fdbf..78f13c2 100644
>> --- a/include/test.h
>> +++ b/include/test.h
>> @@ -111,6 +111,21 @@ pid_t tst_vfork(void);
>>   #endif
>>   
>>   /*
>> + * Macro to use for making functions called only once in
>> + * multi-threaded tests such as init or cleanup function.
>> + * The first call to @name_fn function by any thread shall
>> + * call the @exec_fn. Subsequent calls shall not call @exec_fn.
>> + * *_fn functions must not take any arguments.
>> + */
>> +#define DECLARE_ONCE_FN(name_fn, exec_fn)                           \
>> +    void name_fn(void)                                              \
>> +    {                                                               \
>> +            static pthread_once_t name_fn##_ex = PTHREAD_ONCE_INIT; \
>> +            pthread_once(&name_fn##_ex, exec_fn);                   \
>> +    }
>> +
>> +
>> +/*
>>    * lib/forker.c
>>    */
>>   extern int Forker_pids[];
> This is fine, although I would rather prefix the macro name with TST_ or
> LTP_ and once the pthread_once_t variable is hidden from the global
> namespace we don't have to prefix it with name_fn.
Ah, that's right, thank you for noticing.
>
> If you are OK with these changes, I can commit modified version right
> away ;).
Sure!


------------------------------------------------------------------------------
Flow-based real-time traffic analytics software. Cisco certified tool.
Monitor traffic, SLAs, QoS, Medianet, WAAS etc. with NetFlow Analyzer
Customize your own dashboards, set traffic alerts and generate reports.
Network behavioral analysis & security monitoring. All-in-one tool.
http://pubads.g.doubleclick.net/gampad/clk?id=126839071&iu=/4140/ostg.clktrk
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to