<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>并发 on ffff65535</title><link>https://blog.ffff65535.com/tags/%E5%B9%B6%E5%8F%91/</link><description>Recent content in 并发 on ffff65535</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Mon, 21 Mar 2022 22:26:01 +0800</lastBuildDate><atom:link href="https://blog.ffff65535.com/tags/%E5%B9%B6%E5%8F%91/index.xml" rel="self" type="application/rss+xml"/><item><title>并发协作模型(生产者/消费者模式)-->信号灯法</title><link>https://blog.ffff65535.com/posts/2022/03/21/java-produce-consumption-1/</link><pubDate>Mon, 21 Mar 2022 22:26:01 +0800</pubDate><guid>https://blog.ffff65535.com/posts/2022/03/21/java-produce-consumption-1/</guid><description>&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>方法名&lt;/th>
 &lt;th>作用&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>wait()&lt;/td>
 &lt;td>Object wait() 方法让当前线程进入等待状态。直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>wait(long timeout)&lt;/td>
 &lt;td>Object wait(long timeout) 方法让当前线程处于等待(阻塞)状态，直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法，或者超过参数 timeout 设置的超时时间。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>如果 timeout 参数为 0，则不会超时，会一直进行等待，类似于 wait() 方法。&lt;/td>
 &lt;td>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>notify()&lt;/td>
 &lt;td>Object notify() 方法用于唤醒一个在此对象监视器上等待的线程。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>如果所有的线程都在此对象上等待，那么只会选择一个线程，选择是任意性的，并在对实现做出决定时发生。&lt;/td>
 &lt;td>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>notifyAll()&lt;/td>
 &lt;td>Object notifyAll() 方法用于唤醒在该对象上等待的所有线程。优先级别高的线程有限调度。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>notifyAll() 方法跟 notify() 方法一样，区别在于 notifyAll() 方法唤醒在此对象监视器上等待的所有线程，notify() 方法是一个线程。&lt;/td>
 &lt;td>&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>&lt;a href="https://www.runoob.com/java/java-object-wait.html">https://www.runoob.com/java/java-object-wait.html&lt;/a>&lt;/p></description></item><item><title>并发协作模型(生产者/消费者模式)-->管程法</title><link>https://blog.ffff65535.com/posts/2022/03/21/java-produce-consumption-2/</link><pubDate>Mon, 21 Mar 2022 22:25:31 +0800</pubDate><guid>https://blog.ffff65535.com/posts/2022/03/21/java-produce-consumption-2/</guid><description>&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>方法名&lt;/th>
 &lt;th>作用&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>wait()&lt;/td>
 &lt;td>Object wait() 方法让当前线程进入等待状态。直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>wait(long timeout)&lt;/td>
 &lt;td>Object wait(long timeout) 方法让当前线程处于等待(阻塞)状态，直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法，或者超过参数 timeout 设置的超时时间。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>如果 timeout 参数为 0，则不会超时，会一直进行等待，类似于 wait() 方法。&lt;/td>
 &lt;td>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>notify()&lt;/td>
 &lt;td>Object notify() 方法用于唤醒一个在此对象监视器上等待的线程。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>如果所有的线程都在此对象上等待，那么只会选择一个线程，选择是任意性的，并在对实现做出决定时发生。&lt;/td>
 &lt;td>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>notifyAll()&lt;/td>
 &lt;td>Object notifyAll() 方法用于唤醒在该对象上等待的所有线程。优先级别高的线程有限调度。&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>notifyAll() 方法跟 notify() 方法一样，区别在于 notifyAll() 方法唤醒在此对象监视器上等待的所有线程，notify() 方法是一个线程。&lt;/td>
 &lt;td>&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>&lt;a href="https://www.runoob.com/java/java-object-wait.html">https://www.runoob.com/java/java-object-wait.html&lt;/a>&lt;/p></description></item></channel></rss>