Для вызова метода экземпляра требуется экземпляр. Вы можете передать один, создать новый каждый раз или создать синглтон.
Вот пример кода на основе вашего, который создает и использует синглтон. Статическая переменная _singletonX
создается при первом использовании и будет содержать экземпляр ClassX
.
using System.Threading;
using System.Threading.Tasks;
namespace MyWorkspace
{
public class ClassA
{
private static readonly ClassX _singletonX = new ClassX();
public void MyMethod()
{
var token1 = new CancellationToken();
Task.Factory.StartNew(() => _singletonX.MethodY(), token1, TaskCreationOptions.LongRunning, TaskScheduler.Default);
}
}
public class ClassX
{
public void MethodY()
{
}
}
}