There are 2 approaches to Bitcoin Network usage in play. Bitcoin Core team went with RBF(Replace-By-Fee) which gives rise to the double spending problem as the funds can be re-directed before a transaction gets in to a block. And Bitcoin Cash protocol implementation removed the RBF to support trust in 0-confirmation. There are even more optimizations in BCH implementation of Bitcoin, you can review it here https://cash.coin.dance/development