[Top][All Lists]
[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
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r21606 - in gnunet/src: gns include util,
gnunet <=