Embedded TFS
A TFS can be embedded in an application. Also, referred to as "direct link," this configuration embeds the TFS component into an application. The TFS is not started or stopped explicitly. When an application creates a handle to TFS ("TFS handle") for an embedded TFS, the TFS will automatically be instantiated. Freeing the TFS handle will terminate the embedded TFS.
For details about the TFS handle, see the "Interacting with a TFS" section later.
The TFS handle is not thread-safe. An application accessing the embedded TFS from multiple threads must ensure that the TFS handle is properly protected among its threads.
When using an embedded TFS, you have the option to enable the connection listener process so the TFS can act as a remote TFS. For example, you can build an administration application with a TFS embedded into it and the connection listener enabled. This way, the admin app can control the behavior of the TFS, including starting, stopping and querying it, while allowing remote client applications to access databases it manages.
Like a remote TFS, the connection can be made via TCP/IP or Shared Memory protocols.
The TFS_EMBED configuration runs in the address space of the application that uses it.