Эх сурвалжийг харах

[Feat] [1.0.0] vmnet 使用 vmprocess 通信

xcbosa mbp16 2 сар өмнө
parent
commit
600a687a83
1 өөрчлөгдсөн 6 нэмэгдсэн , 16 устгасан
  1. 6 16
      post_sbin/getty.c

+ 6 - 16
post_sbin/getty.c

@@ -159,8 +159,6 @@ void vmnet_push_data(rx_command command) {
     }
     bool has_next = command.tid == 21;
 
-    log_message("vmnet_push_data 162 has_next = %d", has_next);
-
     pthread_mutex_lock(&vmnet_queue_lock);
 
     if (vmnet_queue_waiting_buffer == NULL) {
@@ -169,34 +167,26 @@ void vmnet_push_data(rx_command command) {
 
     const int size = command.sstdin_len;
     int approve_size = MIN(size, MAX_BUFFER_SIZE - vmnet_queue_waiting_buffer->length);
-    log_message("vmnet_push_data 172 as=%d", approve_size);
     if (approve_size > 0) {
         memcpy(&vmnet_queue_waiting_buffer->buffer[vmnet_queue_waiting_buffer->length], &command.sstdin[0], approve_size);
         vmnet_queue_waiting_buffer->length += approve_size;
     }
 
-    log_message("vmnet_push_data 178 ns=%d", vmnet_queue_waiting_buffer->length);
-
     if (!has_next) {
         if (vmnet_queue_front == NULL) {
-            vmnet_queue_front = vmnet_queue_waiting_buffer;log_message("vmnet_push_data 182");
+            vmnet_queue_front = vmnet_queue_waiting_buffer;
         }
         else {
-            vmnet_queue_elem *elem = vmnet_queue_front;
-            log_message("vmnet_push_data elema = %p", elem);
+            vmnet_queue_elem *elem, *elem_prev;
             for (elem = vmnet_queue_front; elem != NULL; elem = elem->next) {
-                log_message("vmnet_push_data elemb = %p", elem);
+                elem_prev = elem;
             }
-            log_message("vmnet_push_data elemc = %p", elem);
-            elem->next = vmnet_queue_waiting_buffer;
-            log_message("vmnet_push_data 188");
+            elem_prev->next = vmnet_queue_waiting_buffer;
         }
         vmnet_queue_waiting_buffer->next = NULL;
         vmnet_queue_waiting_buffer = NULL;
     }
 
-    log_message("vmnet_push_data done");
-
     pthread_mutex_unlock(&vmnet_queue_lock);
 }
 
@@ -1320,7 +1310,7 @@ void *message_handler_thread(void *arg) {
         log_message("try get data: %d bytes", bytes_read);
 
         if (bytes_read <= 0) {
-            usleep(1000 * 100); // 如果没有消息,等待一段时间(100 ms)
+            usleep(1000 * 1); // 如果没有消息,等待一段时间(1 ms)
             continue;
         }
         
@@ -1350,7 +1340,7 @@ void *message_handler_thread(void *arg) {
                 break;
         }
 
-        usleep(1000 * 10);
+        usleep(100);
     }
     
     return NULL;