code: def get_features(
      dataset,
      query=None,
      crs="epsg:4326",
      bounds=None,
      sortby=None,
      pagesize=10000,
      max_workers=5,
  ):
      
      param_dicts = define_request(dataset, query, crs, bounds, sortby, pagesize)
  
      with ThreadPoolExecutor(max_workers=max_workers) as executor:
          for result in executor.map(make_request, param_dicts):
              for feature in result:
                  yield feature
docs: Yield features from DataBC WFS