Invalid session id when running parallel tests using chromedrivermanager

When running tests in parallel sometimes I get this message:

org.openqa.selenium.NoSuchSessionException: invalid session id

I'm using WebDriverManager:

private WebDriver driver;
    static { WebDriverManager.chromedriver().setup(); }

public Browser() {
    Map<String, Object> prefs = new HashMap<>();
    ChromeOptions chromeOptions = new ChromeOptions();
    if (GVDLUtils.isOnServerEnv()) {
        System.out.println("working on server");
        chromeOptions.addArguments("--window-size=1400,900");
        chromeOptions.addArguments("--headless");
        chromeOptions.addArguments("--no-proxy-server");
        chromeOptions.addArguments("--proxy-server='direct://'");
        chromeOptions.addArguments("--proxy-bypass-list=*");
    }

    String FilesPath = System.getProperty("user.dir") + File.separator + SeleniumUtilities.getDownloadsPath();
    prefs.put("download.default_directory", FilesPath);
    chromeOptions.setExperimentalOption("prefs", prefs);

    this.driver = new ChromeDriver(chromeOptions);

    if (!GVDLUtils.isOnServerEnv()) {
        this.driver.manage().window().maximize();
    }
}

And I initiate new browser before each test:

public static String redux = "";
protected Browser browser;

@BeforeMethod
public void initTest() {
    this.browser = new Browser();
    JavascriptExecutor jse = (JavascriptExecutor) this.browser.getDriver();
    jse.executeScript("localStorage.setItem('redux', '"+redux+"')");
}

Any ideas why it happens?