public static string SRTF(queue q,queuefinish p)
        {
            string msg;
            process p1;
            if (q.length > 0)
            {
                if (q.now_process == null)
                {
                    q.now_process = q.del_shortest_time_remain();

                }
                if (q.now_process.period_need_left <= 0)
                {
                    msg = "完成job" + q.now_process.num.ToString() + "\r\n";
                    q.now_process.time_out = q.now_process.wait_already + q.now_process._need_period_num+q.now_process._time_in;
                    p.wait[p.length++] = q.now_process;
                    q.now_process = q.del_shortest_time_remain();

                    return msg;

                }
                else if (q.now_process.period_need_left > (p1 = (q.length>0?q.del_shortest_time_remain():q.now_process)).period_need_left)
                {
                    q.add(q.now_process);
                    q.now_process = p1;
                    return null;
                }

                else
                {

                    if(q.now_process!=p1)q.add(p1);
                    return null;
                }
            }
            else if (q.now_process != null && q.now_process.period_need_left <= 0)
            {
                msg = "完成job" + q.now_process.num + "\r\n";
                q.now_process.time_out = q.now_process.wait_already + q.now_process._need_period_num + q.now_process._time_in;
                p.wait[p.length++] = q.now_process;
                q.now_process = null;
                return msg;
            }
            else return null;
        }