aboutsummaryrefslogtreecommitdiff
path: root/src/tpool.h
diff options
context:
space:
mode:
authorThomas Voss <mail@thomasvoss.com> 2024-10-30 01:51:14 +0100
committerThomas Voss <mail@thomasvoss.com> 2024-10-30 01:51:14 +0100
commit042e43247f396a9000fead59d9bff87bf12806d6 (patch)
treee902784464cbe9ce3c5114d513b016523e7e4b29 /src/tpool.h
parent170b8a92434233241c990c3e9432786de3262bcd (diff)
Completely revamp the grab source code
Some of the (many) few changes are: - Multithreading for significantly faster performance - The -p/--predicate flag - Byte offsets as the default - No customizable colors (maybe this will come back later) - Newer edition of mlib (formerly librune)
Diffstat (limited to 'src/tpool.h')
-rw-r--r--src/tpool.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/tpool.h b/src/tpool.h
new file mode 100644
index 0000000..04f0486
--- /dev/null
+++ b/src/tpool.h
@@ -0,0 +1,19 @@
+#ifndef GRAB_TPOOL_H
+#define GRAB_TPOOL_H
+
+#include <pthread.h>
+#include <stdatomic.h>
+#include <stddef.h>
+
+typedef struct {
+ int tcnt;
+ pthread_t *thrds;
+ atomic_ptrdiff_t wi;
+ const char **files;
+ ptrdiff_t filecnt;
+} tpool_t;
+
+int tpinit(tpool_t *tp, const char **files, ptrdiff_t filecnt);
+void tpfree(tpool_t *tp);
+
+#endif /* !GRAB_TPOOL_H */