@async macro not recommended?

So are there cases where @async would still be preferred over @spawn in order to avoid race conditions? E.g. if you have a parallel mutations of arrays that aren’t thread safe as noted by stevengj here. Sorry i’m still a little confused about this point.