Question about DBWR, LGWR and Checkpoint:

1. DBWR writes dirty buffers from the data buffer cache to data files
2. LGWR writes the redo log buffer to the active online redo log files
3. Checkpoint occurs when log file is full and then DBWR do what need to do (1)
According Oracle documentation: ‘If DBWR process has not finished checkpoint a file and LGWR needs the file again, LGWR has to wait’.
I do not understand why LGWR needs to wait because LGWR works with log files and DBWR works with data files.