Se ho un'interfaccia quali:asincrone funzioni programmic e virtuali
using System.Threading.Tasks;
...
public interface IFoo
{
Task doIt();
Task<bool> doItAndReturnStuff();
}
e una delle classi che implementano questa interfaccia solo capita di non richiedere metodi asincrone, come posso correggere ignorare queste funzioni?
In altre parole, come si restituiscono correttamente "void" e "bool" racchiusi negli oggetti Task?
Ad esempio:
public class FooHappensToNotNeedAsync : IFoo
{
public override Task doIt()
{
// If I don't return anything here, I get
// error that not all code paths return a value.
// Can I just return null?
}
public override Task<bool> doItAndReturnStuff()
{
// If I want to return true, how to I do it?
// This doesn't work:
return true;
}
}
NOTA - Non riesco a striscia la roba Task completamente perché alcune delle classi che implementano questa interfaccia sono infatti asincrono.
Grazie
'ritorno Task.Run (() => true);' –
@ LB: Questo crea un lavoro extra senza una vera ragione, ed è meno prevedibile che restituire un'attività che è già stata completata. –