Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by dreign · Jul 08, 2017 at 11:52 PM · protectionconcurrency

Unity error "is inaccessible due to its protection level"

I totally understand that I need to instantiate prefabs before using and so on, however, I am now getting such an "inaccessible" error with a Class of the C# collection.

I try to use a ConcurrentQueue (System.Collections.Concurrent.ConcurrentQueue) and the code looks like this:

 using System.Collections.Concurrent;
 using UnityEngine;
 using System.Threading;
 
 public class Agent : MonoBehaviour {
     static private ConcurrentQueue<Storage> tasks = new ConcurrentQueue<Storage>();

Although the docs list "ConcurrentQueue" Unity keeps saying: "System.Collections.Concurrent.ConcurrentQueue is inaccessible due to its protection level"

How can I use it? Why does Unity complain at all, since the class is supplied by System.Collections.Concurrent?

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
2

Answer by Bunny83 · Jul 09, 2017 at 01:04 AM

The mono framework doesn't seem to have a ConcurrentQueue class in it's mscorlib while the .NET framework does have one. There is one that is declared as internal class inside the "nunit.framework". It's possible that your IDE might recognise that class but isn't allowed to access it since it's an internal class.

Though you might be able to just copy the reference source into your project. As alternative you could roll your own implementation.

ps: Just in case you don't know: Most parts of the Unity API is not thread-safe and is not allowed being used from another thread than the main thread.

Comment
Add comment · Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image minime15v · Jul 09, 2017 at 02:23 AM 0
Share

@Bunny83 plz help T,T ive been trying to reach you! A few years ago you had a solution to lost scripts with ILSpy and if anyone needed help to ask. Please help i had tried doing what you said with the assemblies but i just got lost! $$anonymous$$ay i ask what your email is so i can send you the assemblies unity isnt allowing me to upload them hear in the box!

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

69 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

is there a way to secure the .unity3d web player file from downloading? 1 Answer

Multiple concurrent command line builds? 1 Answer

Problème de protection du niveau ? 2 Answers

Unity protection again decompiler or reverse engine 2 Answers

Access protected class from other script. 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges