Hi I 've a little question, 
I'm using socket and I find many situation of infinite recursion see source: <http://pastebin.com/Cbd2Z2uE>

the problem is this:

```
private static void ReceiveCallback(IAsyncResult ar)
{
    ....
    // receive again
    socket.BeginReceive(state.Buffer,
        0,
        StateObject.BufferSize,
        0,
        ReceiveCallback,
    state);

    ....
}

```

So we have an async function that is called again in a recursive way. Here We have a problem with the stack? 
To be more clear, this situation is ok and recursion is fine, the problem and question is:
in this case can I have a problem of stackoverflow?

thanks