Changeset 1437 in Sophya for trunk/ArchTOIPipe/Kernel/toi.cc
- Timestamp:
- Mar 12, 2001, 7:00:28 PM (25 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ArchTOIPipe/Kernel/toi.cc
r1370 r1437 25 25 void TOI::TOIInit() { 26 26 pthread_mutex_init(&mutex, NULL); 27 // ----- Rajouts Reza 12/3/2001 28 pthread_cond_init(&condv, NULL); 29 fgwaitput = fgwaitget = false; 30 fgsigput = fgsigget = false; 31 countwaitput = countwaitget = 0; 32 // Fin rajouts Reza 12/3/2001 ------ 27 33 // pthread_mutex_setname_np(&mutex, (name + "_toi_mutex").c_str(), 0); 28 34 defaultValue = 0; … … 35 41 } 36 42 43 void TOI::PrintStatus(ostream & os) const 44 { 45 os << "TOI::PrintStatus() - Name=" << getName() << endl; 46 os << " WaitStatus: Put/" ; 47 if (isPutWaiting()) os << "Waiting " ; 48 else os << "Running "; 49 os << " PutCountWait= " << getCountWaitPut() << endl; 50 os << " WaitStatus: Get/" ; 51 if (isGetWaiting()) os << "Waiting " ; 52 else os << "Running "; 53 os << " GetCountWait= " << getCountWaitGet() << endl; 54 } 55 56 37 57 void TOI::setProducer(TOIProcessor* p) { 38 58 if (producer) … … 76 96 Array a = doGetData(iStart, iEnd); 77 97 unlock(); 98 if (fgsigput) { fgsigput = false; broadcast(); } 78 99 return a; 79 100 } … … 84 105 double dat = doGetData(i); 85 106 unlock(); 107 if (fgsigput) { fgsigput = false; broadcast(); } 86 108 return dat; 87 109 } … … 93 115 TArray<int_4> a = doGetFlag(iStart, iEnd); 94 116 unlock(); 117 if (fgsigput) { fgsigput = false; broadcast(); } 95 118 return a; 96 119 } … … 101 124 int_4 f = doGetFlag(i); 102 125 unlock(); 126 if (fgsigput) { fgsigput = false; broadcast(); } 103 127 return f; 104 128 } … … 110 134 doPutData(i, value, flag); 111 135 unlock(); 136 if (fgsigget) { fgsigget = false; broadcast(); } 112 137 } 113 138
Note:
See TracChangeset
for help on using the changeset viewer.