Level streaming issue

Hello everyone. Couple weeks ago I met weird implementation of the level streaming system. I use C++ to load and unload stream levels via UGameplayStatics class. Issue is the following: when function in my custom game mode class try to unload streamed level and then load another streamed level, UE4 just unloades level and new level doesn’t stream. All streamed levels are owned by general persistant level. In Blueprints this behavior works fine. What can cause this problem in c++?