In the Bitcoin Core there is class called CBlockIndex
which as its name appears is the implementation of blocks. This class has two variable that for me they looks the same:
class CBlockIndex
{
public:
//! pointer to the index of the predecessor of this block
CBlockIndex* pprev{nullptr};
//! pointer to the index of some further predecessor of this block
CBlockIndex* pskip{nullptr};
The first one (pprev
) is more straightforward and I understand it. It is simply a pointer to the previous CBlockIndex
object in the chain. But the second one is not clear for me. What does the comment means by pointer to the index of some further predecossor
? What it actually is and what are its use cases?