A GNSS 
receiver (100) receives radio signals (S(SV)) transmitted from an active set of 
signal sources (SV1, SV2, SV3, SV5) and based thereon produces position / time related data (DPT). The 
receiver (100) has a tracking 
channel resource for each 
signal source (SV1, SV2, SV3, SV5) in the active set, and the tracking channel resources process the radio signals (S(SV)) in parallel with respect to a real-
time signal data rate of the signals. The 
receiver (100) also includes a 
signal-source 
database (140), a signal-masking 
database (150) and a 
control unit (130). The signal-source 
database (140) describes the movements of the signal sources (SV1, SV2, SV3, SV4, SV5) over time relative to a given 
reference frame, and the signal-masking database (150) reflects, for positions (P) within a predefined 
geographic area, 
visibility / blockage to the 
sky with respect to a direct 
line of sight in terms of spatial sectors (M1(P), M2(P) M3(P)). The 
control unit (130) derives data describing a current position / time (PTR(t)) and a 
current velocity vector (VR(t)) for the receiver (100) based on the position / time related data (DPT); and derives an estimated 
visibility of the signal sources (SV1, SV2, SV3, SV5) in the active set at a second position / time (PTR(t+Δt)) representing an expected future position / time for the receiver (100) based on the signal-source and signal-masking databases (140; 150). If at least one 
signal source (SV1) in the active set is estimated not to be visible at the second position / time (PTR(t+Δt)), the 
control unit (130) initiates a modification of the active set aiming at replacing the at least one non-visible 
signal source (SV1) with at least one 
signal source (SV4) which, based on the signal-source and signal-masking databases (140; 150), is estimated to be visible at the second position / time (PTR(t+Δt)).