Thread overview | |||||
---|---|---|---|---|---|
|
January 20, 2012 Passing arguments to a new thread | ||||
---|---|---|---|---|
| ||||
Hello everybody. As the title states, I want to run a function in a new thread, and pass it some arguments. How would I do that? I guess I could make a class, deriving from Thread, and work with it, but out of curiosity, I'd like to know if it's possible with a simple function. Mars |
January 20, 2012 Re: Passing arguments to a new thread | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mars | On 01/20/2012 03:12 PM, Mars wrote:
> Hello everybody.
> As the title states, I want to run a function in a new thread, and pass
> it some arguments. How would I do that? I guess I could make a class,
> deriving from Thread, and work with it, but out of curiosity, I'd like
> to know if it's possible with a simple function.
>
> Mars
See std.concurrency.
auto tid = spawn(&function, arg1, arg2, arg3, ...);
|
January 20, 2012 Re: Passing arguments to a new thread | ||||
---|---|---|---|---|
| ||||
Posted in reply to Timon Gehr | On Friday, 20 January 2012 at 15:33:34 UTC, Timon Gehr wrote:
> On 01/20/2012 03:12 PM, Mars wrote:
>> Hello everybody.
>> As the title states, I want to run a function in a new thread, and pass
>> it some arguments. How would I do that? I guess I could make a class,
>> deriving from Thread, and work with it, but out of curiosity, I'd like
>> to know if it's possible with a simple function.
>>
>> Mars
>
> See std.concurrency.
>
> auto tid = spawn(&function, arg1, arg2, arg3, ...);
Very interesting, thank you. I'm currently writing a little client<>server application, and wanted to use 1 thread per client, for simplicity, but with this it's probably not harder to just loop through non-blocking recvs, and pass something to a handler thread. Am I right?
|
Copyright © 1999-2021 by the D Language Foundation