#include <DiskThreadsIOStrategy.h>

Inheritance diagram for DiskThreadsIOStrategy:
Collaboration diagram for DiskThreadsIOStrategy:

Public Member Functions

 DiskThreadsIOStrategy ()
 
virtual bool shedLoad ()
 
virtual int load ()
 
virtual RefCount< DiskFilenewFile (char const *path)
 
virtual bool unlinkdUseful () const
 
virtual void unlinkFile (char const *)
 
virtual int callback ()
 
virtual void sync ()
 
virtual void init ()
 
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 SingletonIOStrategy, and DiskdIOStrategy.

Definition at line 53 of file DiskIOStrategy.h.

References NULL.

◆ init()

void DiskThreadsIOStrategy::init ( void  )
virtual

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 ( )
virtual

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)
virtual

Return a handle for performing IO operations

Implements DiskIOStrategy.

Definition at line 222 of file DiskThreadsIOStrategy.cc.

References NULL, and 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 ( )
virtual

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 SingletonIOStrategy, and DiskdIOStrategy.

Definition at line 50 of file DiskIOStrategy.h.

Referenced by Fs::Ufs::UFSStrategy::statfs().

◆ sync()

void DiskThreadsIOStrategy::sync ( )
virtual

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
virtual

whether the IO Strategy can use unlinkd

Implements DiskIOStrategy.

Definition at line 232 of file DiskThreadsIOStrategy.cc.

◆ unlinkFile()

void DiskThreadsIOStrategy::unlinkFile ( char const *  )
virtual

unlink a file by path

Implements DiskIOStrategy.

Definition at line 238 of file DiskThreadsIOStrategy.cc.

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

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