Skip to content

Properties need review #67

@adamkaplan

Description

@adamkaplan

Most properties are written as @property (nullable) Type *thing. This means that the default atomic keyword is implied. So, every property has a thread synchronization lock included. That’s a lot of unneeded overhead for a UI Framework where everything is expected to be used by a single thread.

Atomic properties are a farce anyway. If you are setting one property on thread A and another property on thread B, it’s almost guaranteed to create bugs as the property values can get out of sync. IMO is vastly preferable to state that the classes are explicitly not thread safe, unless you actually intend for them to be (which is a lot of work to do correctly).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions