This is a question of curiosity.
Why does this propery exist? Why not just always support cancellation? It seems like a pointless property.
Kind of like having to mark classes as serializable... why cant they just be that way by default and remove the need to worry about these properties?