Both  .flatten()  and  .view(-1)  flattens a tensor in PyTorch. What’s the difference?

Does  .flatten()  copy data of the tensor?
Is  .view(-1)  faster?
Is there any situation that  .flatten()  doesn’t work?

I’ve tried to read PyTorch’s docs but it doesn’t answer these questions.