Finishes the frame. This isn’t strictly necessary for some kinds of applications but a pretty normal thing to track in games.

Registers a thread with the profiler API(s). This is usually setting a name for the thread. Two variants:

Opens a scope. Two variants:

Attribute Macros

Proc macro for creating a scope around the function, using the name of the function for the scope’s name