Idea: Write a global Queue, and then open a thread to loop. It is not easy to speak, just look at the code!
Public class MyQueue
{
Public decimal Id {get; set ;}
Public decimal Type {get; set ;}
}
Static Queue <MyQueue> TaskQueue = new Queue <MyQueue> ();
Static void Main (string [] args)
{
ServiceStart ();
Console. ReadLine ();
}
Public static void ServiceStart ()
{
Thread TaskThread = new Thread (new ThreadStart (ThreadInvoke ));
TaskThread. IsBackground = true;
TaskThread. Start ();
}
Public static void ThreadInvoke ()
{
While (true)
{
String m_time = DateTime. Now. ToString ("HH: mm: ss ");
If (m_time = Invoke_Time) // determines whether to specify the time (Invoke_Time)
{
// InitTaskQueue (); // initialize the queue
While (TaskQueue. Count> 0)
{
MyQueue m_mq = null;
Lock (TaskQueue)
{
M_mq = TaskQueue. Dequeue ();
}
// YourMethd (m_mq.UserId, m_mq.FeedTypeId); // CALL THE METHOD
// Common. Log. Logger. Info (DateTime. Now. ToString (); // record the Log
Thread. Sleep (100 );
}
}
Thread. Sleep (100 );
}
}