A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Properly register the waiter in wait_any_for(), so that it gets handled on suspend...
[simgrid.git]
/
examples
/
sthread
/
pthread-mutex-simpledeadlock.c
diff --git
a/examples/sthread/pthread-mutex-simpledeadlock.c
b/examples/sthread/pthread-mutex-simpledeadlock.c
index 433852af05a640d32be7dbc7e63e48d09e4528a9..92a04a1ace081ea3083302675fd45db54f60ac51 100644
(file)
--- a/
examples/sthread/pthread-mutex-simpledeadlock.c
+++ b/
examples/sthread/pthread-mutex-simpledeadlock.c
@@
-1,3
+1,8
@@
+/* Copyright (c) 2002-2023. The SimGrid Team. All rights reserved. */
+
+/* This program is free software; you can redistribute it and/or modify it
+ * under the terms of the license (GNU LGPL) which comes with this package. */
+
/* Simple test code that may deadlock:
Thread 1 locks mutex1 then mutex2 while thread 2 locks in reverse order.
/* Simple test code that may deadlock:
Thread 1 locks mutex1 then mutex2 while thread 2 locks in reverse order.
@@
-39,8
+44,8
@@
int main(int argc, char* argv[])
int id[2] = {0, 1};
pthread_t thread1;
pthread_t thread2;
int id[2] = {0, 1};
pthread_t thread1;
pthread_t thread2;
- pthread_create(&thread1, NULL, thread_fun1,
(void*)
&id[0]);
- pthread_create(&thread2, NULL, thread_fun2,
(void*)
&id[1]);
+ pthread_create(&thread1, NULL, thread_fun1, &id[0]);
+ pthread_create(&thread2, NULL, thread_fun2, &id[1]);
fprintf(stderr, "All threads are started.\n");
pthread_join(thread1, NULL);
pthread_join(thread2, NULL);
fprintf(stderr, "All threads are started.\n");
pthread_join(thread1, NULL);
pthread_join(thread2, NULL);