#include <DiskThreadsIOStrategy.h>

Inheritance diagram for DiskThreadsIOStrategy:
Collaboration diagram for DiskThreadsIOStrategy:

Public Member Functions

 DiskThreadsIOStrategy ()
 
bool shedLoad () override
 
int load () override
 
RefCount< DiskFilenewFile (char const *path) override
 
bool unlinkdUseful () const override
 
void unlinkFile (char const *) override
 
int callback () override
 
void sync () override
 
void init () override
 
void done ()
 
virtual void statfs (StoreEntry &) const
 
virtual ConfigOptiongetOptionTree () const
 

Public Attributes

bool initialised
 

Static Public Attributes

static DiskThreadsIOStrategy Instance
 

Private Member Functions

void registerWithCacheManager (void)
 

Static Private Member Functions

static void aioStats (StoreEntry *sentry)
 

Detailed Description

Definition at line 23 of file DiskThreadsIOStrategy.h.

Constructor & Destructor Documentation

◆ DiskThreadsIOStrategy()

DiskThreadsIOStrategy::DiskThreadsIOStrategy ( )

Definition at line 164 of file DiskThreadsIOStrategy.cc.

Member Function Documentation

◆ aioStats()

◆ callback()

◆ done()

void DiskThreadsIOStrategy::done ( void  )

Definition at line 50 of file DiskThreadsIOStrategy.cc.

References initialised, and squidaio_shutdown().

Referenced by DiskThreadsDiskIOModule::gracefulShutdown().

◆ getOptionTree()

virtual ConfigOption * DiskIOStrategy::getOptionTree ( ) const
inlinevirtualinherited

module specific options

Reimplemented in DiskdIOStrategy, and SingletonIOStrategy.

Definition at line 53 of file DiskIOStrategy.h.

Referenced by SingletonIOStrategy::getOptionTree().

◆ init()

void DiskThreadsIOStrategy::init ( void  )
overridevirtual

Init per-instance logic

Reimplemented from DiskIOStrategy.

Definition at line 26 of file DiskThreadsIOStrategy.cc.

References initialised, and registerWithCacheManager().

Referenced by DiskThreadsDiskIOModule::init().

◆ load()

int DiskThreadsIOStrategy::load ( )
overridevirtual

What is the current load? 999 = 99.9%

Implements DiskIOStrategy.

Definition at line 204 of file DiskThreadsIOStrategy.cc.

References aioQueueSize(), debugs, and MAGIC1.

◆ newFile()

DiskFile::Pointer DiskThreadsIOStrategy::newFile ( char const *  path)
overridevirtual

Return a handle for performing IO operations

Implements DiskIOStrategy.

Definition at line 222 of file DiskThreadsIOStrategy.cc.

References shedLoad().

◆ registerWithCacheManager()

void DiskThreadsIOStrategy::registerWithCacheManager ( void  )
private

Definition at line 43 of file DiskThreadsIOStrategy.cc.

References aioStats(), and Mgr::RegisterAction().

Referenced by init().

◆ shedLoad()

bool DiskThreadsIOStrategy::shedLoad ( )
overridevirtual

Can the IO Strategy handle more requests ?

Implements DiskIOStrategy.

Definition at line 187 of file DiskThreadsIOStrategy.cc.

References aioQueueSize(), and MAGIC2.

Referenced by newFile().

◆ statfs()

virtual void DiskIOStrategy::statfs ( StoreEntry ) const
inlinevirtualinherited

cachemgr output on the IO instance stats

Reimplemented in DiskdIOStrategy, and SingletonIOStrategy.

Definition at line 50 of file DiskIOStrategy.h.

Referenced by SingletonIOStrategy::statfs().

◆ sync()

void DiskThreadsIOStrategy::sync ( )
overridevirtual

flush all IO operations

Reimplemented from DiskIOStrategy.

Definition at line 149 of file DiskThreadsIOStrategy.cc.

References callback(), debugs, initialised, and squidaio_sync().

◆ unlinkdUseful()

bool DiskThreadsIOStrategy::unlinkdUseful ( ) const
overridevirtual

whether the IO Strategy can use unlinkd

Implements DiskIOStrategy.

Definition at line 232 of file DiskThreadsIOStrategy.cc.

◆ unlinkFile()

void DiskThreadsIOStrategy::unlinkFile ( char const *  )
overridevirtual

unlink a file by path

Implements DiskIOStrategy.

Definition at line 238 of file DiskThreadsIOStrategy.cc.

References aioUnlink(), StatCounters::disk, statCounter, StatCounters::syscalls, and StatCounters::unlinks.

Member Data Documentation

◆ initialised

bool DiskThreadsIOStrategy::initialised

Definition at line 38 of file DiskThreadsIOStrategy.h.

Referenced by callback(), done(), init(), and sync().

◆ Instance


The documentation for this class was generated from the following files:

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors