Popular Posts
Activate IIS GIZP compress 1. Set metabase editable for editing. 2. Add a new extension for gzip. 3. Edit the file c:\windows\system32\inetsrv\MetaBase.xml Add file... Limit input length of JTextField package swixml.sample; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.Toolkit; import javax.swing.JFrame; import j... Enable SSL connection for Jsoup import org.jsoup.Connection; import org.jsoup.Jsoup; import javax.net.ssl.*; import java.io.IOException; import java.security.KeyManagement...
Blog Archive
Stats
Thread sample
class MyThread
{
    private int executeInterval = 15;
    public int ExecuteInterval
    {
        get { return this.executeInterval; }
        set { this.executeInterval = value; }
    }
    private int checkFlagInterval = 1;
    public int CheckFlagInterval
    {
        get { return this.checkFlagInterval; }
        set
        {
            this.checkFlagInterval = value < 1 ? 1 : value;
            this.checkFlagInterval = value > this.executeInterval ? this.executeInterval : value;
        }
    }
    private bool flag = true;
    public bool Flag
    {
        get { return this.flag; }
        set { this.flag = value; }
    }
    public void Run()
    {
        int timeout = 0;
        while (this.flag)
        {
            if ((timeout -= checkFlagInterval) < 1)
            {
                // do something
                timeout = this.executeInterval;
            }
            Thread.Sleep(this.checkFlagInterval * 1000);
        }
    }
}
class Program
{
    static void Main(string[] args)
    {
        MyThread myThread = new MyThread();
        Thread thread = new Thread(new ThreadStart(myThread.Run));
        thread.Start();

        while (myThread.Flag)
        {
            myThread.Flag = Console.Read() != 'q';
        }
    }
}