class_docstr: Holds files uploaded by users of the running Streamlit app.
  This class can be used safely from multiple threads simultaneously.
class_docstr_tok: ["Holds","files","uploaded","by","users","of","the","running","Streamlit","app",".","This","class","can","be","used","safely","from","multiple","threads","simultaneously","."]
docstr: Safe to call from any thread.
  
  Parameters
  ----------
  session_id
      The ID of the session that owns the file.
  file
      The file to add.
docstr_tok: ["Safe","to","call","from","any","thread",".","Parameters","--","--","--","--","--","session_id","The","ID","of","the","session","that","owns","the","file",".","file","The","file","to","add","."]
code: def add_file(
      self,
      session_id: str,
      file: UploadedFileRec,
  ) -> None:
      """
      Safe to call from any thread.
  
      Parameters
      ----------
      session_id
          The ID of the session that owns the file.
      file
          The file to add.
      """
  
      self.file_storage[session_id][file.file_id] = file
  
file_path: streamlit/lib/streamlit/runtime/memory_uploaded_file_manager.py
imports: import uuid
  from collections import defaultdict
  from typing import Dict, List, Sequence
  from streamlit import util
  from streamlit.logger import get_logger
  from streamlit.runtime.stats import CacheStat, group_stats
  from streamlit.runtime.uploaded_file_manager import UploadedFileManager, UploadedFileRec, UploadFileUrlInfo
label_desc: Use image node_id 5 for calling the MemoryUploadedFileManager obj's underlying member method code with example usage: obj.add_file(session_id, file) without return types