gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r21606 - in gnunet/src: gns include util


From: gnunet
Subject: [GNUnet-SVN] r21606 - in gnunet/src: gns include util
Date: Sun, 27 May 2012 23:10:58 +0200

Author: grothoff
Date: 2012-05-27 23:10:58 +0200 (Sun, 27 May 2012)
New Revision: 21606

Modified:
   gnunet/src/gns/gnunet-service-gns.c
   gnunet/src/include/gnunet_scheduler_lib.h
   gnunet/src/util/scheduler.c
Log:
adding GNUNET_SCHEDULER_add_read_net_with_priority

Modified: gnunet/src/gns/gnunet-service-gns.c
===================================================================
--- gnunet/src/gns/gnunet-service-gns.c 2012-05-27 20:46:13 UTC (rev 21605)
+++ gnunet/src/gns/gnunet-service-gns.c 2012-05-27 21:10:58 UTC (rev 21606)
@@ -926,7 +926,7 @@
   {
     GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
                 "No private key for root zone specified!\n");
-    GNUNET_SCHEDULER_shutdown(0);
+    GNUNET_SCHEDULER_shutdown ();
     return;
   }
 
@@ -951,7 +951,7 @@
     //FIXME do error handling;
     GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
                "Failed to connect to the namestore!\n");
-    GNUNET_SCHEDULER_shutdown(0);
+    GNUNET_SCHEDULER_shutdown ();
     return;
   }
   

Modified: gnunet/src/include/gnunet_scheduler_lib.h
===================================================================
--- gnunet/src/include/gnunet_scheduler_lib.h   2012-05-27 20:46:13 UTC (rev 
21605)
+++ gnunet/src/include/gnunet_scheduler_lib.h   2012-05-27 21:10:58 UTC (rev 
21606)
@@ -238,7 +238,7 @@
  * scheduled AFTER this call may still be delayed arbitrarily.
  */
 void
-GNUNET_SCHEDULER_shutdown ();
+GNUNET_SCHEDULER_shutdown (void);
 
 
 /**
@@ -412,6 +412,29 @@
 
 
 /**
+ * Schedule a new task to be run with a specified priority and to be
+ * run after the specified delay or when the specified file descriptor
+ * is ready for reading.  The delay can be used as a timeout on the
+ * socket being ready.  The task will be scheduled for execution once
+ * either the delay has expired or the socket operation is ready.  It
+ * will be run with the DEFAULT priority.
+ *
+ * * @param delay when should this operation time out? Use
+ *        GNUNET_TIME_UNIT_FOREVER_REL for "on shutdown"
+ * @param rfd read file-descriptor
+ * @param task main function of the task
+ * @param task_cls closure of task
+ * @return unique task identifier for the job
+ *         only valid until "task" is started!
+ */
+GNUNET_SCHEDULER_TaskIdentifier
+GNUNET_SCHEDULER_add_read_net_with_priority (struct GNUNET_TIME_Relative delay,
+                                            enum GNUNET_SCHEDULER_Priority 
priority,
+                                            struct GNUNET_NETWORK_Handle *rfd,
+                                            GNUNET_SCHEDULER_Task task, void 
*task_cls);
+
+
+/**
  * Schedule a new task to be run with a specified delay or when the
  * specified file descriptor is ready for writing.  The delay can be
  * used as a timeout on the socket being ready.  The task will be

Modified: gnunet/src/util/scheduler.c
===================================================================
--- gnunet/src/util/scheduler.c 2012-05-27 20:46:13 UTC (rev 21605)
+++ gnunet/src/util/scheduler.c 2012-05-27 21:10:58 UTC (rev 21606)
@@ -1334,6 +1334,34 @@
                                struct GNUNET_NETWORK_Handle *rfd,
                                GNUNET_SCHEDULER_Task task, void *task_cls)
 {
+  return GNUNET_SCHEDULER_add_read_net_with_priority (delay,
+                                                     
GNUNET_SCHEDULER_PRIORITY_DEFAULT,
+                                                     rfd, task, task_cls);
+}
+
+
+/**
+ * Schedule a new task to be run with a specified priority and to be
+ * run after the specified delay or when the specified file descriptor
+ * is ready for reading.  The delay can be used as a timeout on the
+ * socket being ready.  The task will be scheduled for execution once
+ * either the delay has expired or the socket operation is ready.  It
+ * will be run with the DEFAULT priority.
+ *
+ * * @param delay when should this operation time out? Use
+ *        GNUNET_TIME_UNIT_FOREVER_REL for "on shutdown"
+ * @param rfd read file-descriptor
+ * @param task main function of the task
+ * @param task_cls closure of task
+ * @return unique task identifier for the job
+ *         only valid until "task" is started!
+ */
+GNUNET_SCHEDULER_TaskIdentifier
+GNUNET_SCHEDULER_add_read_net_with_priority (struct GNUNET_TIME_Relative delay,
+                                            enum GNUNET_SCHEDULER_Priority 
priority,
+                                            struct GNUNET_NETWORK_Handle *rfd,
+                                            GNUNET_SCHEDULER_Task task, void 
*task_cls)
+{
 #if MINGW
   struct GNUNET_NETWORK_FDSet *rs;
   GNUNET_SCHEDULER_TaskIdentifier ret;
@@ -1342,20 +1370,21 @@
   rs = GNUNET_NETWORK_fdset_create ();
   GNUNET_NETWORK_fdset_set (rs, rfd);
   ret =
-    GNUNET_SCHEDULER_add_select (GNUNET_SCHEDULER_PRIORITY_DEFAULT,
+    GNUNET_SCHEDULER_add_select (priority,
                                 delay, rs, NULL,
                                 task, task_cls);
   GNUNET_NETWORK_fdset_destroy (rs);
   return ret;
 #else
   return add_without_sets (delay, 
-                          GNUNET_SCHEDULER_PRIORITY_DEFAULT,
+                          priority,
                           GNUNET_NETWORK_get_fd (rfd), -1, task,
                            task_cls);
 #endif
 }
 
 
+
 /**
  * Schedule a new task to be run with a specified delay or when the
  * specified file descriptor is ready for writing.  The delay can be




reply via email to

[Prev in Thread] Current Thread [Next in Thread]