Impact Of Cache On Data-Sharing In Multi-Threaded Programmes