等到工作来,一来就工作
代码public class MainFrame extends javax.swing.JFrame implements Runnable
{
private volatile int cnt = 0;
public MainFrame()
{
initComponents();
this.setSize(500, 300);
new Thread(this).start();
}
public void run()
{
int num=1;
while(true)
{
this.receive();
this.jTextField.setText(String.valueOf(num++));
}
}
private synchronized void send()
{
this.cnt ++;
this.notifyAll();
}
private synchronized void receive()
{
while(this.cnt<=0)
try{this.wait();}catch(Exception e){}
this.cnt --;
}
// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents()
{
jTextField = new javax.swing.JTextField();
jButton = new javax.swing.JButton();
getContentPane().setLayout(null);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setFont(new java.awt.Font("Arial", 0, 10));
setForeground(java.awt.Color.white);
getContentPane().add(jTextField);
jTextField.setBounds(120, 140, 130, 22);
jButton.setText("jButton");
jButton.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(java.awt.event.ActionEvent evt)
{
jButtonActionPerformed(evt);
}
});
getContentPane().add(jButton);
jButton.setBounds(290, 140, 76, 28);
pack();
}
// </editor-fold>
private void jButtonActionPerformed(java.awt.event.ActionEvent evt)
{
this.send();
}
public static void main(String args[])
{
java.awt.EventQueue.invokeLater(new Runnable()
{
public void run()
{
new MainFrame().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jButton;
private javax.swing.JTextField jTextField;
// End of variables declaration
}
{
private volatile int cnt = 0;
public MainFrame()
{
initComponents();
this.setSize(500, 300);
new Thread(this).start();
}
public void run()
{
int num=1;
while(true)
{
this.receive();
this.jTextField.setText(String.valueOf(num++));
}
}
private synchronized void send()
{
this.cnt ++;
this.notifyAll();
}
private synchronized void receive()
{
while(this.cnt<=0)
try{this.wait();}catch(Exception e){}
this.cnt --;
}
// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents()
{
jTextField = new javax.swing.JTextField();
jButton = new javax.swing.JButton();
getContentPane().setLayout(null);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setFont(new java.awt.Font("Arial", 0, 10));
setForeground(java.awt.Color.white);
getContentPane().add(jTextField);
jTextField.setBounds(120, 140, 130, 22);
jButton.setText("jButton");
jButton.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(java.awt.event.ActionEvent evt)
{
jButtonActionPerformed(evt);
}
});
getContentPane().add(jButton);
jButton.setBounds(290, 140, 76, 28);
pack();
}
// </editor-fold>
private void jButtonActionPerformed(java.awt.event.ActionEvent evt)
{
this.send();
}
public static void main(String args[])
{
java.awt.EventQueue.invokeLater(new Runnable()
{
public void run()
{
new MainFrame().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jButton;
private javax.swing.JTextField jTextField;
// End of variables declaration
}
ftp://ftp.comp.hkbu.edu.hk/pub/oracle/


浙公网安备 33010602011771号