Squid Web Cache master
Loading...
Searching...
No Matches
DiskThreadsIOStrategy.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 1996-2025 The Squid Software Foundation and contributors
3 *
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
7 */
8
9/* DEBUG: section 79 Squid-side Disk I/O functions. */
10
11#ifndef SQUID_SRC_DISKIO_DISKTHREADS_DISKTHREADSIOSTRATEGY_H
12#define SQUID_SRC_DISKIO_DISKTHREADS_DISKTHREADSIOSTRATEGY_H
13
14#define _AIO_OPEN 0
15#define _AIO_READ 1
16#define _AIO_WRITE 2
17#define _AIO_CLOSE 3
18#define _AIO_UNLINK 4
19#define _AIO_OPENDIR 5
20#define _AIO_STAT 6
22
24{
25
26public:
28 bool shedLoad() override;
29 int load() override;
30 RefCount<DiskFile> newFile(char const *path) override;
31 bool unlinkdUseful() const override;
32 void unlinkFile (char const *) override;
33 int callback() override;
34 void sync() override;
35 void init() override;
36 void done();
37 /* Todo: add access limitations */
40
41private:
42 static void aioStats(StoreEntry * sentry);
43 void registerWithCacheManager(void);
44};
45
46#endif /* SQUID_SRC_DISKIO_DISKTHREADS_DISKTHREADSIOSTRATEGY_H */
47
static DiskThreadsIOStrategy Instance
void unlinkFile(char const *) override
RefCount< DiskFile > newFile(char const *path) override
bool unlinkdUseful() const override
static void aioStats(StoreEntry *sentry)