Inside Bitcoin
Opening the selected file…
Inside Bitcoin
Opening the selected file…
The code behind the network, with room to understand it.
Release published 2026-10-28 · Snapshot fetched 2026-11-01. Latest stable release at fetch time; development branches and Git history are excluded. Only the selected code window and visible folders load here.
1// Copyright (c) 2011-present The Bitcoin Core developers2// Distributed under the MIT software license, see the accompanying3// file COPYING or http://www.opensource.org/licenses/mit-license.php.5#ifndef BITCOIN_QT_FREESPACECHECKER_H6#define BITCOIN_QT_FREESPACECHECKER_H8#include <QObject>9#include <QString>10#include <QtGlobal>12/* Check free space asynchronously to prevent hanging the UI thread.14Up to one request to check a path is in flight to this thread; when the check()15function runs, the current path is requested from the associated Intro object.16The reply is sent back through a signal.18This ensures that no queue of checking requests is built up while the user is19still entering the path, and that always the most recently entered path is checked as20soon as the thread becomes available.21*/22class FreespaceChecker : public QObject23{24Q_OBJECT26public:27class PathQuery28{29public:30virtual QString getPathToCheck() = 0;31};33explicit FreespaceChecker(PathQuery* intro) : intro{intro} {}35enum Status {36ST_OK,37ST_ERROR38};40public Q_SLOTS:41void check();43Q_SIGNALS:44void reply(int status, const QString &message, quint64 available);46private:47PathQuery* intro;48};50#endif // BITCOIN_QT_FREESPACECHECKER_H
Independent explanations by MyBitcoinExplorer. Not affiliated with or endorsed by Bitcoin Core. Guides are educational and do not replace the source or its tests.
Bitcoin Core source © its contributors, distributed under the MIT license. Original notices and bundled third-party licenses are retained in the source tree.