projects
/
c11tester.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
f597cf6
)
schedule: print debug info
author
Brian Norris
<banorris@uci.edu>
Mon, 23 Apr 2012 06:14:40 +0000
(23:14 -0700)
committer
Brian Norris
<banorris@uci.edu>
Mon, 23 Apr 2012 22:54:40 +0000
(15:54 -0700)
schedule.cc
patch
|
blob
|
history
schedule.h
patch
|
blob
|
history
diff --git
a/schedule.cc
b/schedule.cc
index 13b640cd8e832b2cca826e5a4b68d66143bb854c..2498347c44cc6e2cb6cbb870a829465c318504db 100644
(file)
--- a/
schedule.cc
+++ b/
schedule.cc
@@
-13,6
+13,8
@@
Thread *Scheduler::next_thread(void)
{
Thread *t = model->schedule_next_thread();
{
Thread *t = model->schedule_next_thread();
+ print();
+
if (t != NULL) {
readyList.remove(t);
return t;
if (t != NULL) {
readyList.remove(t);
return t;
@@
-30,3
+32,16
@@
Thread *Scheduler::get_current_thread(void)
{
return current;
}
{
return current;
}
+
+void Scheduler::print()
+{
+ if (current)
+ printf("Current thread: %d\n", current->get_id());
+ else
+ printf("No current thread\n");
+ printf("# Threads in ready list: %ld\n", readyList.size());
+
+ std::list<Thread *>::iterator it;
+ for (it = readyList.begin(); it != readyList.end(); it++)
+ printf("In ready list: thread %d\n", (*it)->get_id());
+}
diff --git
a/schedule.h
b/schedule.h
index aa50ac3705f93a82ec397c56fcb66de9ad04dc75..86e4e40da18c5bc41bfd3908d76b4c48dc80b20b 100644
(file)
--- a/
schedule.h
+++ b/
schedule.h
@@
-11,6
+11,7
@@
public:
void add_thread(Thread *t);
Thread * next_thread(void);
Thread * get_current_thread(void);
void add_thread(Thread *t);
Thread * next_thread(void);
Thread * get_current_thread(void);
+ void print();
private:
std::list<Thread *> readyList;
Thread *current;
private:
std::list<Thread *> readyList;
Thread *current;