In C# you use `BeginInvoke` like this: 

```
obj.BeginInvoke((Action)(() =>
{
    //do something
}));

```

I tried to translate it to VB.NET, and ended up with this code, that seems to work: 

```
obj.BeginInvoke(
    Sub()
        'do something'
    End Sub
)

```

The snippets look very different to me, especially because the `(Action) (() =>` part is missing completely. Is this the correct way to use `BeginInvoke` in VB.NET? 

---

this is **not** a duplicate of [How to use BeginInvoke C#](https://stackoverflow.com/questions/14388136/how-to-use-begininvoke-c-sharp) because the question and every answer uses C# (if any programming language is used). C#-code doesn't help much when you are unsure about if you used the correct VB.NET syntax.