.NET ParameterizedThreadStart wrong return type

c#, methods, multithreading, parameters, return-type

Solution

If you read the error message, you'll see that the problem is that the method has the wrong return type.

Specifically, your `UploadFile` method returns `bool`, but the `ParameterizedThreadStart` delegate returns `void`.

To fix this, change the `UploadFile` method to return `void`, and change all of its `return xxx;` statements to `return;`.

Alternatively, you could wrap `UploadFile` in an anonymous method, like this:

Thread ftpUploadFile = new Thread(delegate { ftp.UploadFile(e.FullPath); });
ftpUploadFile.Start();

Problem

I just started experimenting with Threads and I ran in to a problem I'm not able to solve on my own. I get the error: Error 1 'bool projekt.ftp.UploadFil (object)' has the wrong return type I use this code to start a thread using the method ftp.Uploadfile: ``` Thread ftpUploadFile = new Thread(new ParameterizedThreadStart(ftp.UploadFile)); ftpUploadFile.Start(e.FullPath); ``` And this is the method I used. ``` public static bool UploadFile(object filename) { string file = Convert.ToString(filename); /* blah blah fricken blah snip */ return false; } ```

Original source