2010-10-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

Print message when performing slow file allocation at first time.
	* src/SingleFileAllocationIterator.cc
	* src/SingleFileAllocationIterator.h
pull/1/head
Tatsuhiro Tsujikawa 2010-10-03 13:31:58 +00:00
parent 32d4ffa8ee
commit af207e6cd8
3 changed files with 29 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2010-10-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Print message when performing slow file allocation at first time.
* src/SingleFileAllocationIterator.cc
* src/SingleFileAllocationIterator.h
2010-10-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error on OpenBSD4.7(i386). In openssl.m4, we first

View File

@ -33,18 +33,28 @@
*/
/* copyright --> */
#include "SingleFileAllocationIterator.h"
#include <cstring>
#include <cstdlib>
#include "BinaryStream.h"
#include "util.h"
#include "a2io.h"
#include <cstring>
#include <cstdlib>
#include "Logger.h"
#include "LogFactory.h"
namespace aria2 {
#define BUFSIZE (256*1024)
#define ALIGNMENT 512
SingleFileAllocationIterator::SingleFileAllocationIterator(BinaryStream* stream, off_t offset, uint64_t totalLength):stream_(stream), offset_(offset), totalLength_(totalLength), buffer_(0)
SingleFileAllocationIterator::SingleFileAllocationIterator
(BinaryStream* stream, off_t offset, uint64_t totalLength):
stream_(stream),
offset_(offset),
totalLength_(totalLength),
buffer_(0),
logger_(LogFactory::getInstance())
{
if(offset_%ALIGNMENT != 0) {
stream_->disableDirectIO();
@ -62,6 +72,13 @@ SingleFileAllocationIterator::~SingleFileAllocationIterator()
void SingleFileAllocationIterator::init()
{
static bool noticeDone = false;
if(!noticeDone) {
noticeDone = true;
logger_->notice("Allocating disk space. Use --file-allocation=none to"
" disable it. See --file-allocation option in man page for"
" more details.");
}
#ifdef HAVE_POSIX_MEMALIGN
buffer_ = reinterpret_cast<unsigned char*>
(util::allocateAlignedMemory(ALIGNMENT, BUFSIZE));

View File

@ -40,6 +40,7 @@
namespace aria2 {
class BinaryStream;
class Logger;
class SingleFileAllocationIterator:public FileAllocationIterator
{
@ -51,6 +52,8 @@ private:
uint64_t totalLength_;
unsigned char* buffer_;
Logger* logger_;
public:
SingleFileAllocationIterator(BinaryStream* stream, off_t offset, uint64_t totalLength);