描述一下线程安跃态问题,以及竞态条件
1.线程安全的活跃性问题可以分为死锁、活锁、饥饿
1.活锁就是有时线程虽然没有发生阻塞,但是仍然会存在执行不下去的情况,活锁不会阻塞线
程,线程会一直重复执行某个相同的操作,并且一直失败重试
1.我们开发中使用的异步消息队列就有可能造成活锁的问题,在消息队列的消费端如果没
有正确的ack消息,并且执行过程中报错了,就会再次放回消息头,然后再拿出来执行,
一直循环往复。这个问题除了正确的ack之外,往往是通过将失败的消
描述一下线程安跃态问题,以及竞态条件
1.线程安全的活跃性问题可以分为死锁、活锁、饥饿
1.活锁就是有时线程虽然没有发生阻塞,但是仍然会存在执行不下去的情况,活锁不会阻塞线
程,线程会一直重复执行某个相同的操作,并且一直失败重试
1.我们开发中使用的异步消息队列就有可能造成活锁的问题,在消息队列的消费端如果没
有正确的ack消息,并且执行过程中报错了,就会再次放回消息头,然后再拿出来执行,
一直循环往复。这个问题除了正确的ack之外,往往是通过将失败的消
文档评论(0)