ithewei 4 vuotta sitten
vanhempi
commit
c46912e02a
3 muutettua tiedostoa jossa 13 lisäystä ja 10 poistoa
  1. 2 2
      base/hthread.h
  2. 10 7
      event/nio.c
  3. 1 1
      http/client/http_client.h

+ 2 - 2
base/hthread.h

@@ -195,7 +195,7 @@ protected:
         case SLEEP_UNTIL: {
             if (status_changed) {
                 status_changed = false;
-                base_tp = std::chrono::system_clock::now();
+                base_tp = std::chrono::steady_clock::now();
             }
             base_tp += std::chrono::milliseconds(sleep_ms);
             std::this_thread::sleep_until(base_tp);
@@ -210,7 +210,7 @@ protected:
     uint32_t    sleep_ms;
     // for SLEEP_UNTIL
     std::atomic<bool> status_changed;
-    std::chrono::system_clock::time_point base_tp;
+    std::chrono::steady_clock::time_point base_tp;
 };
 #endif
 

+ 10 - 7
event/nio.c

@@ -174,7 +174,7 @@ static void ssl_client_handshake(hio_t* io) {
 }
 
 static void nio_accept(hio_t* io) {
-    //printd("nio_accept listenfd=%d\n", io->fd);
+    // printd("nio_accept listenfd=%d\n", io->fd);
     socklen_t addrlen;
 accept:
     addrlen = sizeof(sockaddr_u);
@@ -223,7 +223,7 @@ accept_error:
 }
 
 static void nio_connect(hio_t* io) {
-    //printd("nio_connect connfd=%d\n", io->fd);
+    // printd("nio_connect connfd=%d\n", io->fd);
     socklen_t addrlen = sizeof(sockaddr_u);
     int ret = getpeername(io->fd, io->peeraddr, &addrlen);
     if (ret < 0) {
@@ -283,6 +283,7 @@ static int __nio_read(hio_t* io, void* buf, int len) {
         nread = read(io->fd, buf, len);
         break;
     }
+    // hlogd("read retval=%d", nread);
     return nread;
 }
 
@@ -307,11 +308,12 @@ static int __nio_write(hio_t* io, const void* buf, int len) {
         nwrite = write(io->fd, buf, len);
         break;
     }
+    // hlogd("write retval=%d", nwrite);
     return nwrite;
 }
 
 static void nio_read(hio_t* io) {
-    //printd("nio_read fd=%d\n", io->fd);
+    // printd("nio_read fd=%d\n", io->fd);
     void* buf;
     int len, nread;
 read:
@@ -321,7 +323,7 @@ read:
     buf = io->readbuf.base;
     len = io->readbuf.len;
     nread = __nio_read(io, buf, len);
-    //printd("read retval=%d\n", nread);
+    // printd("read retval=%d\n", nread);
     if (nread < 0) {
         if (socket_errno() == EAGAIN) {
             //goto read_done;
@@ -347,7 +349,7 @@ disconnect:
 }
 
 static void nio_write(hio_t* io) {
-    //printd("nio_write fd=%d\n", io->fd);
+    // printd("nio_write fd=%d\n", io->fd);
     int nwrite = 0;
     hrecursive_mutex_lock(&io->write_mutex);
 write:
@@ -363,7 +365,7 @@ write:
     char* buf = pbuf->base + pbuf->offset;
     int len = pbuf->len - pbuf->offset;
     nwrite = __nio_write(io, buf, len);
-    //printd("write retval=%d\n", nwrite);
+    // printd("write retval=%d\n", nwrite);
     if (nwrite < 0) {
         if (socket_errno() == EAGAIN) {
             //goto write_done;
@@ -485,7 +487,7 @@ int hio_write (hio_t* io, const void* buf, size_t len) {
     if (write_queue_empty(&io->write_queue)) {
 try_write:
         nwrite = __nio_write(io, buf, len);
-        //printd("write retval=%d\n", nwrite);
+        // printd("write retval=%d\n", nwrite);
         if (nwrite < 0) {
             if (socket_errno() == EAGAIN) {
                 nwrite = 0;
@@ -541,6 +543,7 @@ enqueue:
             write_queue_init(&io->write_queue, 4);
         }
         write_queue_push_back(&io->write_queue, &rest);
+        // hlogd("write queue %d", rest.len);
     }
     hrecursive_mutex_unlock(&io->write_mutex);
     return nwrite;

+ 1 - 1
http/client/http_client.h

@@ -26,7 +26,7 @@ int main(int argc, char* argv[]) {
 }
 */
 
-#define DEFAULT_HTTP_TIMEOUT    30 // s
+#define DEFAULT_HTTP_TIMEOUT    60 // s
 typedef struct http_client_s http_client_t;
 
 HV_EXPORT http_client_t* http_client_new(const char* host = NULL, int port = DEFAULT_HTTP_PORT, int https = 0);