Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware API
      • ZBrush Python API
      • ZBrush GoZ API
      • Code Examples on Github
    • Forum
    • Downloads
    • Support
      • Support Procedures
      • Registered Developer Program
      • Plugin IDs
      • Contact Us
    • Categories
      • Overview
      • News & Information
      • Cinema 4D SDK Support
      • Cineware SDK Support
      • ZBrush 4D SDK Support
      • Bugs
      • General Talk
    • Unread
    • Recent
    • Tags
    • Users
    • Login

    Is ExecuteEffector() a critical section?

    SDK Help
    0
    2
    204
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • H
      Helper
      last edited by

      On 02/07/2013 at 11:01, xxxxxxxx wrote:

      User Information:
      Cinema 4D Version:    
      Platform:      
      Language(s) :

      ---------
      Does EffectorData::ExecuteEffector() represent a critical section? There is no such information in
      the documentation, though I could imagine multiple objects making use of the same effector
      invoking it from different threads at the same time.

      Within ExecuteEffector(), I store the MoData passed to this method in the Effectors' members. If
      the method is called from multiple threads at the same time, it will certainly screw things up.

      Can someone cancel out my fears with this?

      1 Reply Last reply Reply Quote 0
      • H
        Helper
        last edited by

        On 15/07/2013 at 08:15, xxxxxxxx wrote:

        I am not an expert with mograph but in Effex I had massive problems with multithreaded calls when I tried to execute effectors. It simply doesn't work (from a scenehook at least). The modified data was always scrambled afterward. I had to precompute them single-threaded (there is a thread of mine here in the forum about this), which worked then. Not sure if this helps but that was my experience.

        1 Reply Last reply Reply Quote 0
        • First post
          Last post