Browse Source

fix test/set of thr->pth to also work in windows

nfactor-troky
Kano 13 years ago
parent
commit
5033dcd355
  1. 2
      README
  2. 4
      main.c
  3. 6
      miner.h
  4. 4
      util.c

2
README

@ -282,7 +282,7 @@ dedicated to this program, @@ -282,7 +282,7 @@ dedicated to this program,
The output line shows the following:
(5s):1713.6 (avg):1707.8 Mh/s | Q:301 A:729 R:8 HW:0 E:242% U:22.53/m
Each column is as folloss:
Each column is as follows:
A 5 second exponentially decaying average hash rate
An all time average hash rate
The number of requested (Queued) work items from the pools

4
main.c

@ -3785,7 +3785,7 @@ static void *api_thread(void *userdata) @@ -3785,7 +3785,7 @@ static void *api_thread(void *userdata)
api();
mythr->pth = 0L;
PTH(mythr) = 0L;
return NULL;
}
@ -4925,7 +4925,7 @@ static void *longpoll_thread(void *userdata) @@ -4925,7 +4925,7 @@ static void *longpoll_thread(void *userdata)
pool = select_longpoll_pool();
new_longpoll:
if (!pool->hdr_path) {
if (!pool) {
applog(LOG_WARNING, "No long-poll found on any pool server");
goto out;
}

6
miner.h

@ -237,6 +237,12 @@ struct cgpu_info { @@ -237,6 +237,12 @@ struct cgpu_info {
#endif
};
#ifndef WIN32
#define PTH(thr) ((thr)->pth)
#else
#define PTH(thr) ((thr)->pth.p)
#endif
struct thread_q {
struct list_head q;

4
util.c

@ -681,10 +681,10 @@ void thr_info_cancel(struct thr_info *thr) @@ -681,10 +681,10 @@ void thr_info_cancel(struct thr_info *thr)
if (thr->q)
tq_freeze(thr->q);
if (thr->pth) {
if (PTH(thr) != 0L) {
if (!pthread_cancel(thr->pth))
pthread_join(thr->pth, NULL);
thr->pth = 0L;
PTH(thr) = 0L;
}
}

Loading…
Cancel
Save