Czy powinniśmy używać CancellationToken z kontrolerami MVC / Web API?

Istnieją różne przykłady kontrolerów asynchronicznych. Niektóre z nich używają CancellationToken w definicji metody:

public async Task<ActionResult> ShowItem(int id, CancellationToken cancellationToken)
{
    await Database.GetItem(id, cancellationToken);
    ...

Ale inne przykłady, a nawet domyślne projekty ASP.NET dla VS2013 w ogóle nie używają CancellationToken i działają bez niego:

public async Task<ActionResult> ShowItem(int id)
{
    await Database.GetItem(id);
    ...

Nie jest jasne, czy powinniśmy użyć znacznika anulowania w kontrolerach, czy nie (i dlaczego).

questionAnswers(3)

yourAnswerToTheQuestion