Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6906027
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 27, 20262026-05-27T08:15:24+00:00 2026-05-27T08:15:24+00:00

I have 2 Lists of differnt objects used in different contexts. Each list is

  • 0

I have 2 Lists of differnt objects used in different contexts. Each list is accessed by multiple threads which can add, remove and change state of objects in list. Both lists are protected from multiple access by locking on the list. Thats seems fine.
There is now a requirement that objects in List1 holds a reference to an object in List2 in order to READ a particular property (which gets WRITEN by different threads).
So although each list (and hence contained objects) are each protected from multiple access it is now possible for one thread to write List1 Object1.Property while another thread is reading it via List2 Object2.Object1.Property.
Is this situation thead safe? (I don’t think it is but am not 100% sure).
If not safe – what is best way to make it safe?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-27T08:15:25+00:00Added an answer on May 27, 2026 at 8:15 am

    Then you should apply a lock directly on the written object. If you lock Object1 before modifying ‘Property’, then it will work no matter if the thread uses Object1.Property or Object2.Object1.Property.

    As to know if it’s thread safe without locking, well it depends on the type of your property, and how you modify it. Read/Write operation are thread-safe on 32bit long data (for instance an int, or a reference). But your operation may need multiple Read/Write.

    Object.IntProperty = 3; // Write-only on a 32bit value, thread-safe
    Console.WriteLine(Object.IntProperty); // Read-only on a 32bit value, thread-safe
    Object.IntProperty++; // Read + Write, not thread-safe. Requires locking
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have two lists, each on different tabs (sub-sites) of the site. I would
I have a class with multiple public properties whose objects are being used in
I have a list of objects which need to be output 2 items per
I have these container objects (let's call them Container) in a list. Each of
I have two lists of two different kinds of objects representing data rows from
I have some objects which will be used in the same manor. This object
I have an object in a list that I need to rank several different
I have several different lists I want to call. They all have the same
I have four different lists. headers , descriptions , short_descriptions and misc . I
I have 2 different lists: EmployeeNames and Names I read the values in Names

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.