KernelPanic@programming.dev to Programmer Humor@programming.devEnglish · 2 months agoLearning to program in rustprogramming.devvideomessage-square49linkfedilinkarrow-up181arrow-down13
arrow-up178arrow-down1videoLearning to program in rustprogramming.devKernelPanic@programming.dev to Programmer Humor@programming.devEnglish · 2 months agomessage-square49linkfedilink
minus-squarePlexSheep@infosec.publinkfedilinkarrow-up0·2 months agoYou mean mutex? Arc allows synchronous read only access by multiple threads, so it’s not a performance bottleneck. Locking a mutex would be one.
minus-squaretatterdemalion@programming.devlinkfedilinkarrow-up5·2 months agoArc is not free, and the extra atomic operations + heap allocations can become a bottleneck.
minus-squarePlexSheep@infosec.publinkfedilinkarrow-up1·1 month agoOh, I did not know that. Well, it makes sense that it has a heap allocation, as it becomes more or less global. Though not sure why the atomic operations are needed when the value inside is immutable.
minus-squareMiaou@jlai.lulinkfedilinkarrow-up1·1 month agoHow can you otherwise keep track of an object’s lifetime if copies are made concurrently?
You mean mutex? Arc allows synchronous read only access by multiple threads, so it’s not a performance bottleneck. Locking a mutex would be one.
Arc
is not free, and the extra atomic operations + heap allocations can become a bottleneck.Oh, I did not know that. Well, it makes sense that it has a heap allocation, as it becomes more or less global. Though not sure why the atomic operations are needed when the value inside is immutable.
How can you otherwise keep track of an object’s lifetime if copies are made concurrently?