并发编程中的两个关键问题?以及如何解决呢?Java呢?

并发编程中的两个关键问题:

  • 线程之间如何通信?
  • 线程之间如何同步?

什么是线程通信?

线程通信是指线程之间如何交换信息。

什么是线程同步?

线程同步是指控制多个线程按照一定顺序先后执行。

如何实现线程通信?

  • 共享内存
  • 消息传递

怎样实现共享内存?

  • 线程之间共享程序的公共状态,通过读、写内存中的程序公共状态,实现线程之间的隐式通信。
  • 在共享内存并发模型中,线程的同步是显式进行的。开发者必须指定某个方法或某段代码需要在线程之间互斥执行。

怎样实现消息传递?

  • 在消息传递模型中,没有程序的公共状态,线程之间通过直接发送消息来实现通信。
  • 在消息传递并发模型中,由于消息的发送必须在消息接收之前,因此同步是隐式进行的。

Java中线程是如何通信的?

  • Java并发编程中,线程之间的通信使用的是共享内存并发模型。
  • Java线程之间的通信是隐式进行的,对开发者来说是透明的。
posted @ 2021-12-07 15:15  Alfie014  阅读(43)  评论(0编辑  收藏  举报