schedule: replace queue with list
authorBrian Norris <banorris@uci.edu>
Fri, 20 Apr 2012 17:30:58 +0000 (10:30 -0700)
committerBrian Norris <banorris@uci.edu>
Fri, 20 Apr 2012 17:30:58 +0000 (10:30 -0700)
I'll need random access to its elements later.

schedule.cc
schedule.h

index 691c6f43088595300ac198783328d4b102c8b0f4..04328252da0c8dbbf1452e4b7cd6d091c14a7116 100644 (file)
@@ -6,16 +6,16 @@
 void Scheduler::add_thread(Thread *t)
 {
        DEBUG("thread %d\n", t->get_id());
-       queue.push(t);
+       readyList.push_back(t);
 }
 
 Thread *Scheduler::next_thread(void)
 {
-       if (queue.empty())
+       if (readyList.empty())
                return NULL;
 
-       current = queue.front();
-       queue.pop();
+       current = readyList.front();
+       readyList.pop_front();
 
        return current;
 }
index 64531b5e94eb5023887b6779bcd5acb132bc82df..aa50ac3705f93a82ec397c56fcb66de9ad04dc75 100644 (file)
@@ -1,7 +1,7 @@
 #ifndef __SCHEDULE_H__
 #define __SCHEDULE_H__
 
-#include <queue>
+#include <list>
 
 #include "threads.h"
 #include "model.h"
@@ -12,7 +12,7 @@ public:
        Thread * next_thread(void);
        Thread * get_current_thread(void);
 private:
-       std::queue<Thread *> queue;
+       std::list<Thread *> readyList;
        Thread *current;
 };